Loading ...
Sorry, an error occurred while loading the content.

Re: Diesignal and Expath.pm

Expand Messages
  • trond_straume
    When I included: $SOAP::Constants::DO_NOT_USE_XML_PARSER=1; to my code, everything seems to work fine (though it runs a bit slower). Is it possible that the
    Message 1 of 11 , Nov 11, 2002
    • 0 Attachment
      When I included:

      $SOAP::Constants::DO_NOT_USE_XML_PARSER=1;

      to my code, everything seems to work fine (though it runs a bit
      slower).

      Is it possible that the problem is due to my installation of
      XML::Parser?

      (I'm using perl 5.6.1)

      Regards

      Trond Straume

      --- In soaplite@y..., "trond_straume" <trond.straume@o...> wrote:
      > Hi!
      >
      > when I'm including this code to mye Soap::Lite client:
      >
      > sub BEGIN {
      > $diehandler = $SIG{'__DIE__'};
      > $SIG{'__DIE__'} = \&print_error;
      > }
      >
      > sub END {
      > $SIG{'__DIE__'} = $diehandler;
      > }
      >
      > it produces this strange errormessage:
      >
      > Can't use string ("<?xml version='1.0' encoding='UT") as a symbol
      ref
      > while "strict refs" in use
      > at /local/perl/5.6.1/lib/site_perl/5.6.1/sun4-solaris-
      > ld/XML/Parser/Expat.pm line 456.
      >
      > The thing is that the response from the soap-server, includes this
      > declaration:
      >
      > <?xml version='1.0' encoding='UTF-8'?>
      > blah blah
      > blah
      > .
      > .
      >
      > Are there any known problems, when using single quotes (') instead
      of
      > double ("), or is the error due to other problems?
      >
      > Regards
      >
      > Trond Straume
    • trond_straume
      But with: $SOAP::Constants::DO_NOT_USE_XML_PARSER=1; I m not able to run Perl in Tainted mode. The script stops processing after recieving the response from
      Message 2 of 11 , Nov 11, 2002
      • 0 Attachment
        But with:

        $SOAP::Constants::DO_NOT_USE_XML_PARSER=1;

        I'm not able to run Perl in Tainted mode. The script "stops
        processing" after recieving the response from the server (just
        waiting to timeout)...

        Why?

        Regards
        Trond Straume

        --- In soaplite@y..., "trond_straume" <trond.straume@o...> wrote:
        > When I included:
        >
        > $SOAP::Constants::DO_NOT_USE_XML_PARSER=1;
        >
        > to my code, everything seems to work fine (though it runs a bit
        > slower).
        >
        > Is it possible that the problem is due to my installation of
        > XML::Parser?
        >
        > (I'm using perl 5.6.1)
        >
        > Regards
        >
        > Trond Straume
        >
        > --- In soaplite@y..., "trond_straume" <trond.straume@o...> wrote:
        > > Hi!
        > >
        > > when I'm including this code to mye Soap::Lite client:
        > >
        > > sub BEGIN {
        > > $diehandler = $SIG{'__DIE__'};
        > > $SIG{'__DIE__'} = \&print_error;
        > > }
        > >
        > > sub END {
        > > $SIG{'__DIE__'} = $diehandler;
        > > }
        > >
        > > it produces this strange errormessage:
        > >
        > > Can't use string ("<?xml version='1.0' encoding='UT") as a symbol
        > ref
        > > while "strict refs" in use
        > > at /local/perl/5.6.1/lib/site_perl/5.6.1/sun4-solaris-
        > > ld/XML/Parser/Expat.pm line 456.
        > >
        > > The thing is that the response from the soap-server, includes
        this
        > > declaration:
        > >
        > > <?xml version='1.0' encoding='UTF-8'?>
        > > blah blah
        > > blah
        > > .
        > > .
        > >
        > > Are there any known problems, when using single quotes (')
        instead
        > of
        > > double ("), or is the error due to other problems?
        > >
        > > Regards
        > >
        > > Trond Straume
      • Tim Jenness
        This is an old bug ( 6 months). There is a problem with one of the pattern matches in the pure-perl parser (a bug in the perl detainting). I think Paul has a
        Message 3 of 11 , Nov 11, 2002
        • 0 Attachment
          This is an old bug (>6 months). There is a problem with one of the pattern
          matches in the pure-perl parser (a bug in the perl detainting). I think
          Paul has a workaround (it came up in perl5-porters prior to the release of
          perl 5.8.0) but I can't remember exactly what that work around is (I was
          hoping he would make a new release with this fix in).

          Tim

          On Mon, 11 Nov 2002, trond_straume wrote:

          > But with:
          >
          > $SOAP::Constants::DO_NOT_USE_XML_PARSER=1;
          >
          > I'm not able to run Perl in Tainted mode. The script "stops
          > processing" after recieving the response from the server (just
          > waiting to timeout)...
          >
          > Why?
          >
          > Regards
          > Trond Straume
          >
          > --- In soaplite@y..., "trond_straume" <trond.straume@o...> wrote:
          > > When I included:
          > >
          > > $SOAP::Constants::DO_NOT_USE_XML_PARSER=1;
          > >
          > > to my code, everything seems to work fine (though it runs a bit
          > > slower).
          > >
          > > Is it possible that the problem is due to my installation of
          > > XML::Parser?
          > >
          > > (I'm using perl 5.6.1)
          > >
          > > Regards
          > >
          > > Trond Straume
          > >
          > > --- In soaplite@y..., "trond_straume" <trond.straume@o...> wrote:
          > > > Hi!
          > > >
          > > > when I'm including this code to mye Soap::Lite client:
          > > >
          > > > sub BEGIN {
          > > > $diehandler = $SIG{'__DIE__'};
          > > > $SIG{'__DIE__'} = \&print_error;
          > > > }
          > > >
          > > > sub END {
          > > > $SIG{'__DIE__'} = $diehandler;
          > > > }
          > > >
          > > > it produces this strange errormessage:
          > > >
          > > > Can't use string ("<?xml version='1.0' encoding='UT") as a symbol
          > > ref
          > > > while "strict refs" in use
          > > > at /local/perl/5.6.1/lib/site_perl/5.6.1/sun4-solaris-
          > > > ld/XML/Parser/Expat.pm line 456.
          > > >
          > > > The thing is that the response from the soap-server, includes
          > this
          > > > declaration:
          > > >
          > > > <?xml version='1.0' encoding='UTF-8'?>
          > > > blah blah
          > > > blah
          > > > .
          > > > .
          > > >
          > > > Are there any known problems, when using single quotes (')
          > instead
          > > of
          > > > double ("), or is the error due to other problems?
          > > >
          > > > Regards
          > > >
          > > > Trond Straume
          >
          >
          >
          > To unsubscribe from this group, send an email to:
          > soaplite-unsubscribe@yahoogroups.com
          >
          >
          >
          > Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
          >
          >
          >

          --
          Tim Jenness
          JAC software
          http://www.jach.hawaii.edu/~timj
        • Paul Kulchenko
          Hi Tim, ... This one? (XML::Parser::Lite.pm) - eval qq{sub parse_re { use re eval ; 1 while $_[0] =~ m{$_}go }; 1} or die; + eval qq{sub parse_re { use
          Message 4 of 11 , Nov 11, 2002
          • 0 Attachment
            Hi Tim,

            > This is an old bug (>6 months). There is a problem with one of the
            > pattern
            > matches in the pure-perl parser (a bug in the perl detainting). I

            This one?

            (XML::Parser::Lite.pm)
            - eval qq{sub parse_re { use re "eval"; 1 while \$_[0] =~
            m{$_}go }; 1} or die;
            + eval qq{sub parse_re { use re "eval"; my \$t = \$_[0]; 1 while
            \$t =~ m{$_}go }; 1} or die;

            Trond, does this help? Can't think of anything else.

            Best wishes, Paul.

            --- Tim Jenness <t.jenness@...> wrote:
            >
            > This is an old bug (>6 months). There is a problem with one of the
            > pattern
            > matches in the pure-perl parser (a bug in the perl detainting). I
            > think
            > Paul has a workaround (it came up in perl5-porters prior to the
            > release of
            > perl 5.8.0) but I can't remember exactly what that work around is
            > (I was
            > hoping he would make a new release with this fix in).
            >
            > Tim
            >
            > On Mon, 11 Nov 2002, trond_straume wrote:
            >
            > > But with:
            > >
            > > $SOAP::Constants::DO_NOT_USE_XML_PARSER=1;
            > >
            > > I'm not able to run Perl in Tainted mode. The script "stops
            > > processing" after recieving the response from the server (just
            > > waiting to timeout)...
            > >
            > > Why?
            > >
            > > Regards
            > > Trond Straume
            > >
            > > --- In soaplite@y..., "trond_straume" <trond.straume@o...> wrote:
            > > > When I included:
            > > >
            > > > $SOAP::Constants::DO_NOT_USE_XML_PARSER=1;
            > > >
            > > > to my code, everything seems to work fine (though it runs a bit
            >
            > > > slower).
            > > >
            > > > Is it possible that the problem is due to my installation of
            > > > XML::Parser?
            > > >
            > > > (I'm using perl 5.6.1)
            > > >
            > > > Regards
            > > >
            > > > Trond Straume
            > > >
            > > > --- In soaplite@y..., "trond_straume" <trond.straume@o...>
            > wrote:
            > > > > Hi!
            > > > >
            > > > > when I'm including this code to mye Soap::Lite client:
            > > > >
            > > > > sub BEGIN {
            > > > > $diehandler = $SIG{'__DIE__'};
            > > > > $SIG{'__DIE__'} = \&print_error;
            > > > > }
            > > > >
            > > > > sub END {
            > > > > $SIG{'__DIE__'} = $diehandler;
            > > > > }
            > > > >
            > > > > it produces this strange errormessage:
            > > > >
            > > > > Can't use string ("<?xml version='1.0' encoding='UT") as a
            > symbol
            > > > ref
            > > > > while "strict refs" in use
            > > > > at /local/perl/5.6.1/lib/site_perl/5.6.1/sun4-solaris-
            > > > > ld/XML/Parser/Expat.pm line 456.
            > > > >
            > > > > The thing is that the response from the soap-server, includes
            >
            > > this
            > > > > declaration:
            > > > >
            > > > > <?xml version='1.0' encoding='UTF-8'?>
            > > > > blah blah
            > > > > blah
            > > > > .
            > > > > .
            > > > >
            > > > > Are there any known problems, when using single quotes (')
            > > instead
            > > > of
            > > > > double ("), or is the error due to other problems?
            > > > >
            > > > > Regards
            > > > >
            > > > > Trond Straume
            > >
            > >
            > >
            > > To unsubscribe from this group, send an email to:
            > > soaplite-unsubscribe@yahoogroups.com
            > >
            > >
            > >
            > > Your use of Yahoo! Groups is subject to
            > http://docs.yahoo.com/info/terms/
            > >
            > >
            > >
            >
            > --
            > Tim Jenness
            > JAC software
            > http://www.jach.hawaii.edu/~timj
            >
            >
            >
            > ------------------------ Yahoo! Groups Sponsor
            >
            > To unsubscribe from this group, send an email to:
            > soaplite-unsubscribe@yahoogroups.com
            >
            >
            >
            > Your use of Yahoo! Groups is subject to
            > http://docs.yahoo.com/info/terms/
            >
            >


            __________________________________________________
            Do you Yahoo!?
            U2 on LAUNCH - Exclusive greatest hits videos
            http://launch.yahoo.com/u2
          • trond_straume
            Hi! Yes, this works just fine! But I still don t get it why XML/Parser/Expat.pm line 456. sends diesignal when using XML::Parser. May it be due to 5.6.1?
            Message 5 of 11 , Nov 12, 2002
            • 0 Attachment
              Hi!

              Yes, this works just fine!

              But I still don't get it why "XML/Parser/Expat.pm line 456." sends
              diesignal when using XML::Parser. May it be due to 5.6.1?

              Trond

              --- In soaplite@y..., Paul Kulchenko <paulclinger@y...> wrote:
              > Hi Tim,
              >
              > > This is an old bug (>6 months). There is a problem with one of the
              > > pattern
              > > matches in the pure-perl parser (a bug in the perl detainting). I
              >
              > This one?
              >
              > (XML::Parser::Lite.pm)
              > - eval qq{sub parse_re { use re "eval"; 1 while \$_[0] =~
              > m{$_}go }; 1} or die;
              > + eval qq{sub parse_re { use re "eval"; my \$t = \$_[0]; 1
              while
              > \$t =~ m{$_}go }; 1} or die;
              >
              > Trond, does this help? Can't think of anything else.
              >
              > Best wishes, Paul.
              >
              > --- Tim Jenness <t.jenness@j...> wrote:
              > >
              > > This is an old bug (>6 months). There is a problem with one of the
              > > pattern
              > > matches in the pure-perl parser (a bug in the perl detainting). I
              > > think
              > > Paul has a workaround (it came up in perl5-porters prior to the
              > > release of
              > > perl 5.8.0) but I can't remember exactly what that work around is
              > > (I was
              > > hoping he would make a new release with this fix in).
              > >
              > > Tim
              > >
              > > On Mon, 11 Nov 2002, trond_straume wrote:
              > >
              > > > But with:
              > > >
              > > > $SOAP::Constants::DO_NOT_USE_XML_PARSER=1;
              > > >
              > > > I'm not able to run Perl in Tainted mode. The script "stops
              > > > processing" after recieving the response from the server (just
              > > > waiting to timeout)...
              > > >
              > > > Why?
              > > >
              > > > Regards
              > > > Trond Straume
              > > >
              > > > --- In soaplite@y..., "trond_straume" <trond.straume@o...>
              wrote:
              > > > > When I included:
              > > > >
              > > > > $SOAP::Constants::DO_NOT_USE_XML_PARSER=1;
              > > > >
              > > > > to my code, everything seems to work fine (though it runs a
              bit
              > >
              > > > > slower).
              > > > >
              > > > > Is it possible that the problem is due to my installation of
              > > > > XML::Parser?
              > > > >
              > > > > (I'm using perl 5.6.1)
              > > > >
              > > > > Regards
              > > > >
              > > > > Trond Straume
              > > > >
              > > > > --- In soaplite@y..., "trond_straume" <trond.straume@o...>
              > > wrote:
              > > > > > Hi!
              > > > > >
              > > > > > when I'm including this code to mye Soap::Lite client:
              > > > > >
              > > > > > sub BEGIN {
              > > > > > $diehandler = $SIG{'__DIE__'};
              > > > > > $SIG{'__DIE__'} = \&print_error;
              > > > > > }
              > > > > >
              > > > > > sub END {
              > > > > > $SIG{'__DIE__'} = $diehandler;
              > > > > > }
              > > > > >
              > > > > > it produces this strange errormessage:
              > > > > >
              > > > > > Can't use string ("<?xml version='1.0' encoding='UT") as a
              > > symbol
              > > > > ref
              > > > > > while "strict refs" in use
              > > > > > at /local/perl/5.6.1/lib/site_perl/5.6.1/sun4-solaris-
              > > > > > ld/XML/Parser/Expat.pm line 456.
              > > > > >
              > > > > > The thing is that the response from the soap-server,
              includes
              > >
              > > > this
              > > > > > declaration:
              > > > > >
              > > > > > <?xml version='1.0' encoding='UTF-8'?>
              > > > > > blah blah
              > > > > > blah
              > > > > > .
              > > > > > .
              > > > > >
              > > > > > Are there any known problems, when using single quotes (')
              > > > instead
              > > > > of
              > > > > > double ("), or is the error due to other problems?
              > > > > >
              > > > > > Regards
              > > > > >
              > > > > > Trond Straume
              > > >
              > > >
              > > >
              > > > To unsubscribe from this group, send an email to:
              > > > soaplite-unsubscribe@y...
              > > >
              > > >
              > > >
              > > > Your use of Yahoo! Groups is subject to
              > > http://docs.yahoo.com/info/terms/
              > > >
              > > >
              > > >
              > >
              > > --
              > > Tim Jenness
              > > JAC software
              > > http://www.jach.hawaii.edu/~timj
              > >
              > >
              > >
              > > ------------------------ Yahoo! Groups Sponsor
              > >
              > > To unsubscribe from this group, send an email to:
              > > soaplite-unsubscribe@y...
              > >
              > >
              > >
              > > Your use of Yahoo! Groups is subject to
              > > http://docs.yahoo.com/info/terms/
              > >
              > >
              >
              >
              > __________________________________________________
              > Do you Yahoo!?
              > U2 on LAUNCH - Exclusive greatest hits videos
              > http://launch.yahoo.com/u2
            • Sean.Meisner@VerizonWireless.com
              Expat.pm does something squirrely. It has a method that allows you to pass in a scalar containing a string of XML, OR a handle to a file that presumably
              Message 6 of 11 , Nov 12, 2002
              • 0 Attachment
                Expat.pm does something squirrely. It has a method that
                allows you to pass in a scalar containing a string of XML,
                OR a handle to a file that presumably contains some XML.

                In order to ascertain whether it's been passed a
                string or a filehandle, the method first attempts to
                treat the variable as a filehandle. This generates a
                die signal if the variable you have passed was a string.
                The method catches the die signal using eval {} so normally
                you would never know the signal was generated.

                This is all good UNLESS the default die handler is overidden.
                Then, you'll see strange behaviour. This has caused problems
                for me when using CGI::Carp in conjunction with Expat,
                because CGI::Carp also overrides the default die handler.

                Cheers,

                Sean


                > -----Original Message-----
                > From: trond_straume [mailto:trond.straume@...]
                > Sent: Tuesday, November 12, 2002 4:08 AM
                > To: soaplite@yahoogroups.com
                > Subject: [soaplite] Re: Diesignal and Expath.pm
                >
                >
                > Hi!
                >
                > Yes, this works just fine!
                >
                > But I still don't get it why "XML/Parser/Expat.pm line 456." sends
                > diesignal when using XML::Parser. May it be due to 5.6.1?
                >
                > Trond
                >
                > --- In soaplite@y..., Paul Kulchenko <paulclinger@y...> wrote:
                > > Hi Tim,
                > >
                > > > This is an old bug (>6 months). There is a problem with one of the
                > > > pattern
                > > > matches in the pure-perl parser (a bug in the perl detainting). I
                > >
                > > This one?
                > >
                > > (XML::Parser::Lite.pm)
                > > - eval qq{sub parse_re { use re "eval"; 1 while \$_[0] =~
                > > m{$_}go }; 1} or die;
                > > + eval qq{sub parse_re { use re "eval"; my \$t = \$_[0]; 1
                > while
                > > \$t =~ m{$_}go }; 1} or die;
                > >
                > > Trond, does this help? Can't think of anything else.
                > >
                > > Best wishes, Paul.
                > >
                > > --- Tim Jenness <t.jenness@j...> wrote:
                > > >
                > > > This is an old bug (>6 months). There is a problem with one of the
                > > > pattern
                > > > matches in the pure-perl parser (a bug in the perl detainting). I
                > > > think
                > > > Paul has a workaround (it came up in perl5-porters prior to the
                > > > release of
                > > > perl 5.8.0) but I can't remember exactly what that work around is
                > > > (I was
                > > > hoping he would make a new release with this fix in).
                > > >
                > > > Tim
                > > >
                > > > On Mon, 11 Nov 2002, trond_straume wrote:
                > > >
                > > > > But with:
                > > > >
                > > > > $SOAP::Constants::DO_NOT_USE_XML_PARSER=1;
                > > > >
                > > > > I'm not able to run Perl in Tainted mode. The script "stops
                > > > > processing" after recieving the response from the server (just
                > > > > waiting to timeout)...
                > > > >
                > > > > Why?
                > > > >
                > > > > Regards
                > > > > Trond Straume
                > > > >
                > > > > --- In soaplite@y..., "trond_straume" <trond.straume@o...>
                > wrote:
                > > > > > When I included:
                > > > > >
                > > > > > $SOAP::Constants::DO_NOT_USE_XML_PARSER=1;
                > > > > >
                > > > > > to my code, everything seems to work fine (though it runs a
                > bit
                > > >
                > > > > > slower).
                > > > > >
                > > > > > Is it possible that the problem is due to my installation of
                > > > > > XML::Parser?
                > > > > >
                > > > > > (I'm using perl 5.6.1)
                > > > > >
                > > > > > Regards
                > > > > >
                > > > > > Trond Straume
                > > > > >
                > > > > > --- In soaplite@y..., "trond_straume" <trond.straume@o...>
                > > > wrote:
                > > > > > > Hi!
                > > > > > >
                > > > > > > when I'm including this code to mye Soap::Lite client:
                > > > > > >
                > > > > > > sub BEGIN {
                > > > > > > $diehandler = $SIG{'__DIE__'};
                > > > > > > $SIG{'__DIE__'} = \&print_error;
                > > > > > > }
                > > > > > >
                > > > > > > sub END {
                > > > > > > $SIG{'__DIE__'} = $diehandler;
                > > > > > > }
                > > > > > >
                > > > > > > it produces this strange errormessage:
                > > > > > >
                > > > > > > Can't use string ("<?xml version='1.0' encoding='UT") as a
                > > > symbol
                > > > > > ref
                > > > > > > while "strict refs" in use
                > > > > > > at /local/perl/5.6.1/lib/site_perl/5.6.1/sun4-solaris-
                > > > > > > ld/XML/Parser/Expat.pm line 456.
                > > > > > >
                > > > > > > The thing is that the response from the soap-server,
                > includes
                > > >
                > > > > this
                > > > > > > declaration:
                > > > > > >
                > > > > > > <?xml version='1.0' encoding='UTF-8'?>
                > > > > > > blah blah
                > > > > > > blah
                > > > > > > .
                > > > > > > .
                > > > > > >
                > > > > > > Are there any known problems, when using single quotes (')
                > > > > instead
                > > > > > of
                > > > > > > double ("), or is the error due to other problems?
                > > > > > >
                > > > > > > Regards
                > > > > > >
                > > > > > > Trond Straume
                > > > >
                > > > >
                > > > >
                > > > > To unsubscribe from this group, send an email to:
                > > > > soaplite-unsubscribe@y...
                > > > >
                > > > >
                > > > >
                > > > > Your use of Yahoo! Groups is subject to
                > > > http://docs.yahoo.com/info/terms/
                > > > >
                > > > >
                > > > >
                > > >
                > > > --
                > > > Tim Jenness
                > > > JAC software
                > > > http://www.jach.hawaii.edu/~timj
                > > >
                > > >
                > > >
                > > > ------------------------ Yahoo! Groups Sponsor
                > > >
                > > > To unsubscribe from this group, send an email to:
                > > > soaplite-unsubscribe@y...
                > > >
                > > >
                > > >
                > > > Your use of Yahoo! Groups is subject to
                > > > http://docs.yahoo.com/info/terms/
                > > >
                > > >
                > >
                > >
                > > __________________________________________________
                > > Do you Yahoo!?
                > > U2 on LAUNCH - Exclusive greatest hits videos
                > > http://launch.yahoo.com/u2
                >
                >
                > To unsubscribe from this group, send an email to:
                > soaplite-unsubscribe@yahoogroups.com
                >
                >
                >
                > Your use of Yahoo! Groups is subject to
                http://docs.yahoo.com/info/terms/
              • Paul Kulchenko
                Hi Sean, ... Absolutely true. However, knowing this effect, I do have local $SIG{__DIE__}; deep in my handler, so you shouldn t see parser errors (you won t
                Message 7 of 11 , Nov 12, 2002
                • 0 Attachment
                  Hi Sean,

                  > This is all good UNLESS the default die handler is overidden.
                  > Then, you'll see strange behaviour. This has caused problems
                  Absolutely true. However, knowing this effect, I do have "local
                  $SIG{__DIE__};" deep in my handler, so you shouldn't see parser
                  errors (you won't be able to catch them either). I wonder why that
                  doesn't work.

                  Best wishes, Paul.

                  --- Sean.Meisner@... wrote:
                  > Expat.pm does something squirrely. It has a method that
                  > allows you to pass in a scalar containing a string of XML,
                  > OR a handle to a file that presumably contains some XML.
                  >
                  > In order to ascertain whether it's been passed a
                  > string or a filehandle, the method first attempts to
                  > treat the variable as a filehandle. This generates a
                  > die signal if the variable you have passed was a string.
                  > The method catches the die signal using eval {} so normally
                  > you would never know the signal was generated.
                  >
                  > This is all good UNLESS the default die handler is overidden.
                  > Then, you'll see strange behaviour. This has caused problems
                  > for me when using CGI::Carp in conjunction with Expat,
                  > because CGI::Carp also overrides the default die handler.
                  >
                  > Cheers,
                  >
                  > Sean
                  >
                  >
                  > > -----Original Message-----
                  > > From: trond_straume [mailto:trond.straume@...]
                  > > Sent: Tuesday, November 12, 2002 4:08 AM
                  > > To: soaplite@yahoogroups.com
                  > > Subject: [soaplite] Re: Diesignal and Expath.pm
                  > >
                  > >
                  > > Hi!
                  > >
                  > > Yes, this works just fine!
                  > >
                  > > But I still don't get it why "XML/Parser/Expat.pm line 456."
                  > sends
                  > > diesignal when using XML::Parser. May it be due to 5.6.1?
                  > >
                  > > Trond
                  > >
                  > > --- In soaplite@y..., Paul Kulchenko <paulclinger@y...> wrote:
                  > > > Hi Tim,
                  > > >
                  > > > > This is an old bug (>6 months). There is a problem with one
                  > of the
                  > > > > pattern
                  > > > > matches in the pure-perl parser (a bug in the perl
                  > detainting). I
                  > > >
                  > > > This one?
                  > > >
                  > > > (XML::Parser::Lite.pm)
                  > > > - eval qq{sub parse_re { use re "eval"; 1 while \$_[0] =~
                  > > > m{$_}go }; 1} or die;
                  > > > + eval qq{sub parse_re { use re "eval"; my \$t = \$_[0]; 1
                  >
                  > > while
                  > > > \$t =~ m{$_}go }; 1} or die;
                  > > >
                  > > > Trond, does this help? Can't think of anything else.
                  > > >
                  > > > Best wishes, Paul.
                  > > >
                  > > > --- Tim Jenness <t.jenness@j...> wrote:
                  > > > >
                  > > > > This is an old bug (>6 months). There is a problem with one
                  > of the
                  > > > > pattern
                  > > > > matches in the pure-perl parser (a bug in the perl
                  > detainting). I
                  > > > > think
                  > > > > Paul has a workaround (it came up in perl5-porters prior to
                  > the
                  > > > > release of
                  > > > > perl 5.8.0) but I can't remember exactly what that work
                  > around is
                  > > > > (I was
                  > > > > hoping he would make a new release with this fix in).
                  > > > >
                  > > > > Tim
                  > > > >
                  > > > > On Mon, 11 Nov 2002, trond_straume wrote:
                  > > > >
                  > > > > > But with:
                  > > > > >
                  > > > > > $SOAP::Constants::DO_NOT_USE_XML_PARSER=1;
                  > > > > >
                  > > > > > I'm not able to run Perl in Tainted mode. The script "stops
                  >
                  > > > > > processing" after recieving the response from the server
                  > (just
                  > > > > > waiting to timeout)...
                  > > > > >
                  > > > > > Why?
                  > > > > >
                  > > > > > Regards
                  > > > > > Trond Straume
                  > > > > >
                  > > > > > --- In soaplite@y..., "trond_straume" <trond.straume@o...>
                  > > wrote:
                  > > > > > > When I included:
                  > > > > > >
                  > > > > > > $SOAP::Constants::DO_NOT_USE_XML_PARSER=1;
                  > > > > > >
                  > > > > > > to my code, everything seems to work fine (though it runs
                  > a
                  > > bit
                  > > > >
                  > > > > > > slower).
                  > > > > > >
                  > > > > > > Is it possible that the problem is due to my installation
                  > of
                  > > > > > > XML::Parser?
                  > > > > > >
                  > > > > > > (I'm using perl 5.6.1)
                  > > > > > >
                  > > > > > > Regards
                  > > > > > >
                  > > > > > > Trond Straume
                  > > > > > >
                  > > > > > > --- In soaplite@y..., "trond_straume"
                  > <trond.straume@o...>
                  > > > > wrote:
                  > > > > > > > Hi!
                  > > > > > > >
                  > > > > > > > when I'm including this code to mye Soap::Lite client:
                  > > > > > > >
                  > > > > > > > sub BEGIN {
                  > > > > > > > $diehandler = $SIG{'__DIE__'};
                  > > > > > > > $SIG{'__DIE__'} = \&print_error;
                  > > > > > > > }
                  > > > > > > >
                  > > > > > > > sub END {
                  > > > > > > > $SIG{'__DIE__'} = $diehandler;
                  > > > > > > > }
                  > > > > > > >
                  > > > > > > > it produces this strange errormessage:
                  > > > > > > >
                  > > > > > > > Can't use string ("<?xml version='1.0' encoding='UT")
                  > as a
                  > > > > symbol
                  > > > > > > ref
                  > > > > > > > while "strict refs" in use
                  > > > > > > > at /local/perl/5.6.1/lib/site_perl/5.6.1/sun4-solaris-
                  > > > > > > > ld/XML/Parser/Expat.pm line 456.
                  > > > > > > >
                  > > > > > > > The thing is that the response from the soap-server,
                  > > includes
                  > > > >
                  > > > > > this
                  > > > > > > > declaration:
                  > > > > > > >
                  > > > > > > > <?xml version='1.0' encoding='UTF-8'?>
                  > > > > > > > blah blah
                  > > > > > > > blah
                  > > > > > > > .
                  > > > > > > > .
                  > > > > > > >
                  > > > > > > > Are there any known problems, when using single quotes
                  > (')
                  > > > > > instead
                  > > > > > > of
                  > > > > > > > double ("), or is the error due to other problems?
                  > > > > > > >
                  > > > > > > > Regards
                  > > > > > > >
                  > > > > > > > Trond Straume
                  > > > > >
                  > > > > >
                  > > > > >
                  > > > > > To unsubscribe from this group, send an email to:
                  > > > > > soaplite-unsubscribe@y...
                  > > > > >
                  > > > > >
                  > > > > >
                  > > > > > Your use of Yahoo! Groups is subject to
                  > > > > http://docs.yahoo.com/info/terms/
                  > > > > >
                  > > > > >
                  > > > > >
                  > > > >
                  > > > > --
                  > > > > Tim Jenness
                  > > > > JAC software
                  > > > > http://www.jach.hawaii.edu/~timj
                  > > > >
                  > > > >
                  > > > >
                  > > > > ------------------------ Yahoo! Groups Sponsor
                  > > > >
                  > > > > To unsubscribe from this group, send an email to:
                  > > > > soaplite-unsubscribe@y...
                  > > > >
                  > > > >
                  > > > >
                  > > > > Your use of Yahoo! Groups is subject to
                  > > > > http://docs.yahoo.com/info/terms/
                  > > > >
                  > > > >
                  > > >
                  > > >
                  > > > __________________________________________________
                  > > > Do you Yahoo!?
                  >
                  === message truncated ===


                  __________________________________________________
                  Do you Yahoo!?
                  U2 on LAUNCH - Exclusive greatest hits videos
                  http://launch.yahoo.com/u2
                • Sean.Meisner@VerizonWireless.com
                  Hi Paul, That wouldn t help if the die handler has already been overidden before your method gets called. It would localize the value but it wouldn t reset
                  Message 8 of 11 , Nov 12, 2002
                  • 0 Attachment
                    Hi Paul,

                    That wouldn't help if the die handler has already been overidden
                    before your method gets called. It would localize the value but
                    it wouldn't reset it. But you might be able to set it back to
                    the default handler for the scope of your method. Something like:

                    {
                    local($SIG{'__DIE__'}) = 'DEFAULT';
                    ...
                    ...
                    }


                    Cheers,

                    Sean


                    > -----Original Message-----
                    > From: Paul Kulchenko [mailto:paulclinger@...]
                    > Sent: Tuesday, November 12, 2002 3:13 PM
                    > To: Sean.Meisner@...; soaplite@yahoogroups.com
                    > Subject: RE: [soaplite] Re: Diesignal and Expath.pm
                    >
                    >
                    > Hi Sean,
                    >
                    > > This is all good UNLESS the default die handler is overidden.
                    > > Then, you'll see strange behaviour. This has caused problems
                    > Absolutely true. However, knowing this effect, I do have "local
                    > $SIG{__DIE__};" deep in my handler, so you shouldn't see parser
                    > errors (you won't be able to catch them either). I wonder why that
                    > doesn't work.
                    >
                    > Best wishes, Paul.
                    >
                    > --- Sean.Meisner@... wrote:
                    > > Expat.pm does something squirrely. It has a method that
                    > > allows you to pass in a scalar containing a string of XML,
                    > > OR a handle to a file that presumably contains some XML.
                    > >
                    > > In order to ascertain whether it's been passed a
                    > > string or a filehandle, the method first attempts to
                    > > treat the variable as a filehandle. This generates a
                    > > die signal if the variable you have passed was a string.
                    > > The method catches the die signal using eval {} so normally
                    > > you would never know the signal was generated.
                    > >
                    > > This is all good UNLESS the default die handler is overidden.
                    > > Then, you'll see strange behaviour. This has caused problems
                    > > for me when using CGI::Carp in conjunction with Expat,
                    > > because CGI::Carp also overrides the default die handler.
                    > >
                    > > Cheers,
                    > >
                    > > Sean
                    > >
                    > >
                    > > > -----Original Message-----
                    > > > From: trond_straume [mailto:trond.straume@...]
                    > > > Sent: Tuesday, November 12, 2002 4:08 AM
                    > > > To: soaplite@yahoogroups.com
                    > > > Subject: [soaplite] Re: Diesignal and Expath.pm
                    > > >
                    > > >
                    > > > Hi!
                    > > >
                    > > > Yes, this works just fine!
                    > > >
                    > > > But I still don't get it why "XML/Parser/Expat.pm line 456."
                    > > sends
                    > > > diesignal when using XML::Parser. May it be due to 5.6.1?
                    > > >
                    > > > Trond
                    > > >
                    > > > --- In soaplite@y..., Paul Kulchenko <paulclinger@y...> wrote:
                    > > > > Hi Tim,
                    > > > >
                    > > > > > This is an old bug (>6 months). There is a problem with one
                    > > of the
                    > > > > > pattern
                    > > > > > matches in the pure-perl parser (a bug in the perl
                    > > detainting). I
                    > > > >
                    > > > > This one?
                    > > > >
                    > > > > (XML::Parser::Lite.pm)
                    > > > > - eval qq{sub parse_re { use re "eval"; 1 while \$_[0] =~
                    > > > > m{$_}go }; 1} or die;
                    > > > > + eval qq{sub parse_re { use re "eval"; my \$t = \$_[0]; 1
                    > >
                    > > > while
                    > > > > \$t =~ m{$_}go }; 1} or die;
                    > > > >
                    > > > > Trond, does this help? Can't think of anything else.
                    > > > >
                    > > > > Best wishes, Paul.
                    > > > >
                    > > > > --- Tim Jenness <t.jenness@j...> wrote:
                    > > > > >
                    > > > > > This is an old bug (>6 months). There is a problem with one
                    > > of the
                    > > > > > pattern
                    > > > > > matches in the pure-perl parser (a bug in the perl
                    > > detainting). I
                    > > > > > think
                    > > > > > Paul has a workaround (it came up in perl5-porters prior to
                    > > the
                    > > > > > release of
                    > > > > > perl 5.8.0) but I can't remember exactly what that work
                    > > around is
                    > > > > > (I was
                    > > > > > hoping he would make a new release with this fix in).
                    > > > > >
                    > > > > > Tim
                    > > > > >
                    > > > > > On Mon, 11 Nov 2002, trond_straume wrote:
                    > > > > >
                    > > > > > > But with:
                    > > > > > >
                    > > > > > > $SOAP::Constants::DO_NOT_USE_XML_PARSER=1;
                    > > > > > >
                    > > > > > > I'm not able to run Perl in Tainted mode. The script "stops
                    > >
                    > > > > > > processing" after recieving the response from the server
                    > > (just
                    > > > > > > waiting to timeout)...
                    > > > > > >
                    > > > > > > Why?
                    > > > > > >
                    > > > > > > Regards
                    > > > > > > Trond Straume
                    > > > > > >
                    > > > > > > --- In soaplite@y..., "trond_straume" <trond.straume@o...>
                    > > > wrote:
                    > > > > > > > When I included:
                    > > > > > > >
                    > > > > > > > $SOAP::Constants::DO_NOT_USE_XML_PARSER=1;
                    > > > > > > >
                    > > > > > > > to my code, everything seems to work fine (though it runs
                    > > a
                    > > > bit
                    > > > > >
                    > > > > > > > slower).
                    > > > > > > >
                    > > > > > > > Is it possible that the problem is due to my installation
                    > > of
                    > > > > > > > XML::Parser?
                    > > > > > > >
                    > > > > > > > (I'm using perl 5.6.1)
                    > > > > > > >
                    > > > > > > > Regards
                    > > > > > > >
                    > > > > > > > Trond Straume
                    > > > > > > >
                    > > > > > > > --- In soaplite@y..., "trond_straume"
                    > > <trond.straume@o...>
                    > > > > > wrote:
                    > > > > > > > > Hi!
                    > > > > > > > >
                    > > > > > > > > when I'm including this code to mye Soap::Lite client:
                    > > > > > > > >
                    > > > > > > > > sub BEGIN {
                    > > > > > > > > $diehandler = $SIG{'__DIE__'};
                    > > > > > > > > $SIG{'__DIE__'} = \&print_error;
                    > > > > > > > > }
                    > > > > > > > >
                    > > > > > > > > sub END {
                    > > > > > > > > $SIG{'__DIE__'} = $diehandler;
                    > > > > > > > > }
                    > > > > > > > >
                    > > > > > > > > it produces this strange errormessage:
                    > > > > > > > >
                    > > > > > > > > Can't use string ("<?xml version='1.0' encoding='UT")
                    > > as a
                    > > > > > symbol
                    > > > > > > > ref
                    > > > > > > > > while "strict refs" in use
                    > > > > > > > > at /local/perl/5.6.1/lib/site_perl/5.6.1/sun4-solaris-
                    > > > > > > > > ld/XML/Parser/Expat.pm line 456.
                    > > > > > > > >
                    > > > > > > > > The thing is that the response from the soap-server,
                    > > > includes
                    > > > > >
                    > > > > > > this
                    > > > > > > > > declaration:
                    > > > > > > > >
                    > > > > > > > > <?xml version='1.0' encoding='UTF-8'?>
                    > > > > > > > > blah blah
                    > > > > > > > > blah
                    > > > > > > > > .
                    > > > > > > > > .
                    > > > > > > > >
                    > > > > > > > > Are there any known problems, when using single quotes
                    > > (')
                    > > > > > > instead
                    > > > > > > > of
                    > > > > > > > > double ("), or is the error due to other problems?
                    > > > > > > > >
                    > > > > > > > > Regards
                    > > > > > > > >
                    > > > > > > > > Trond Straume
                    > > > > > >
                    > > > > > >
                    > > > > > >
                    > > > > > > To unsubscribe from this group, send an email to:
                    > > > > > > soaplite-unsubscribe@y...
                    > > > > > >
                    > > > > > >
                    > > > > > >
                    > > > > > > Your use of Yahoo! Groups is subject to
                    > > > > > http://docs.yahoo.com/info/terms/
                    > > > > > >
                    > > > > > >
                    > > > > > >
                    > > > > >
                    > > > > > --
                    > > > > > Tim Jenness
                    > > > > > JAC software
                    > > > > > http://www.jach.hawaii.edu/~timj
                    > > > > >
                    > > > > >
                    > > > > >
                    > > > > > ------------------------ Yahoo! Groups Sponsor
                    > > > > >
                    > > > > > To unsubscribe from this group, send an email to:
                    > > > > > soaplite-unsubscribe@y...
                    > > > > >
                    > > > > >
                    > > > > >
                    > > > > > Your use of Yahoo! Groups is subject to
                    > > > > > http://docs.yahoo.com/info/terms/
                    > > > > >
                    > > > > >
                    > > > >
                    > > > >
                    > > > > __________________________________________________
                    > > > > Do you Yahoo!?
                    > >
                    > === message truncated ===
                    >
                    >
                    > __________________________________________________
                    > Do you Yahoo!?
                    > U2 on LAUNCH - Exclusive greatest hits videos
                    > http://launch.yahoo.com/u2
                    >
                  • Paul Kulchenko
                    Hi Sean, Thanks for the hint. For some reason I assumed that local $SIG{foo}; is the same as local $SIG{foo} = DEFAULT ; I ll fix that. Best wishes, Paul. ...
                    Message 9 of 11 , Nov 12, 2002
                    • 0 Attachment
                      Hi Sean,

                      Thanks for the hint. For some reason I assumed that

                      local $SIG{foo};

                      is the same as

                      local $SIG{foo} = 'DEFAULT';

                      I'll fix that.

                      Best wishes, Paul.

                      --- Sean.Meisner@... wrote:
                      > Hi Paul,
                      >
                      > That wouldn't help if the die handler has already been overidden
                      > before your method gets called. It would localize the value but
                      > it wouldn't reset it. But you might be able to set it back to
                      > the default handler for the scope of your method. Something like:
                      >
                      > {
                      > local($SIG{'__DIE__'}) = 'DEFAULT';
                      > ...
                      > ...
                      > }
                      >
                      >
                      > Cheers,
                      >
                      > Sean
                      >
                      >
                      > > -----Original Message-----
                      > > From: Paul Kulchenko [mailto:paulclinger@...]
                      > > Sent: Tuesday, November 12, 2002 3:13 PM
                      > > To: Sean.Meisner@...; soaplite@yahoogroups.com
                      > > Subject: RE: [soaplite] Re: Diesignal and Expath.pm
                      > >
                      > >
                      > > Hi Sean,
                      > >
                      > > > This is all good UNLESS the default die handler is overidden.
                      > > > Then, you'll see strange behaviour. This has caused problems
                      > > Absolutely true. However, knowing this effect, I do have "local
                      > > $SIG{__DIE__};" deep in my handler, so you shouldn't see parser
                      > > errors (you won't be able to catch them either). I wonder why
                      > that
                      > > doesn't work.
                      > >
                      > > Best wishes, Paul.
                      > >
                      > > --- Sean.Meisner@... wrote:
                      > > > Expat.pm does something squirrely. It has a method that
                      > > > allows you to pass in a scalar containing a string of XML,
                      > > > OR a handle to a file that presumably contains some XML.
                      > > >
                      > > > In order to ascertain whether it's been passed a
                      > > > string or a filehandle, the method first attempts to
                      > > > treat the variable as a filehandle. This generates a
                      > > > die signal if the variable you have passed was a string.
                      > > > The method catches the die signal using eval {} so normally
                      > > > you would never know the signal was generated.
                      > > >
                      > > > This is all good UNLESS the default die handler is overidden.
                      > > > Then, you'll see strange behaviour. This has caused problems
                      > > > for me when using CGI::Carp in conjunction with Expat,
                      > > > because CGI::Carp also overrides the default die handler.
                      > > >
                      > > > Cheers,
                      > > >
                      > > > Sean
                      > > >
                      > > >
                      > > > > -----Original Message-----
                      > > > > From: trond_straume [mailto:trond.straume@...]
                      > > > > Sent: Tuesday, November 12, 2002 4:08 AM
                      > > > > To: soaplite@yahoogroups.com
                      > > > > Subject: [soaplite] Re: Diesignal and Expath.pm
                      > > > >
                      > > > >
                      > > > > Hi!
                      > > > >
                      > > > > Yes, this works just fine!
                      > > > >
                      > > > > But I still don't get it why "XML/Parser/Expat.pm line 456."
                      > > > sends
                      > > > > diesignal when using XML::Parser. May it be due to 5.6.1?
                      > > > >
                      > > > > Trond
                      > > > >
                      > > > > --- In soaplite@y..., Paul Kulchenko <paulclinger@y...>
                      > wrote:
                      > > > > > Hi Tim,
                      > > > > >
                      > > > > > > This is an old bug (>6 months). There is a problem with
                      > one
                      > > > of the
                      > > > > > > pattern
                      > > > > > > matches in the pure-perl parser (a bug in the perl
                      > > > detainting). I
                      > > > > >
                      > > > > > This one?
                      > > > > >
                      > > > > > (XML::Parser::Lite.pm)
                      > > > > > - eval qq{sub parse_re { use re "eval"; 1 while \$_[0]
                      > =~
                      > > > > > m{$_}go }; 1} or die;
                      > > > > > + eval qq{sub parse_re { use re "eval"; my \$t =
                      > \$_[0]; 1
                      > > >
                      > > > > while
                      > > > > > \$t =~ m{$_}go }; 1} or die;
                      > > > > >
                      > > > > > Trond, does this help? Can't think of anything else.
                      > > > > >
                      > > > > > Best wishes, Paul.
                      > > > > >
                      > > > > > --- Tim Jenness <t.jenness@j...> wrote:
                      > > > > > >
                      > > > > > > This is an old bug (>6 months). There is a problem with
                      > one
                      > > > of the
                      > > > > > > pattern
                      > > > > > > matches in the pure-perl parser (a bug in the perl
                      > > > detainting). I
                      > > > > > > think
                      > > > > > > Paul has a workaround (it came up in perl5-porters prior
                      > to
                      > > > the
                      > > > > > > release of
                      > > > > > > perl 5.8.0) but I can't remember exactly what that work
                      > > > around is
                      > > > > > > (I was
                      > > > > > > hoping he would make a new release with this fix in).
                      > > > > > >
                      > > > > > > Tim
                      > > > > > >
                      > > > > > > On Mon, 11 Nov 2002, trond_straume wrote:
                      > > > > > >
                      > > > > > > > But with:
                      > > > > > > >
                      > > > > > > > $SOAP::Constants::DO_NOT_USE_XML_PARSER=1;
                      > > > > > > >
                      > > > > > > > I'm not able to run Perl in Tainted mode. The script
                      > "stops
                      > > >
                      > > > > > > > processing" after recieving the response from the
                      > server
                      > > > (just
                      > > > > > > > waiting to timeout)...
                      > > > > > > >
                      > > > > > > > Why?
                      > > > > > > >
                      > > > > > > > Regards
                      > > > > > > > Trond Straume
                      > > > > > > >
                      > > > > > > > --- In soaplite@y..., "trond_straume"
                      > <trond.straume@o...>
                      > > > > wrote:
                      > > > > > > > > When I included:
                      > > > > > > > >
                      > > > > > > > > $SOAP::Constants::DO_NOT_USE_XML_PARSER=1;
                      > > > > > > > >
                      > > > > > > > > to my code, everything seems to work fine (though it
                      > runs
                      > > > a
                      > > > > bit
                      > > > > > >
                      > > > > > > > > slower).
                      > > > > > > > >
                      > > > > > > > > Is it possible that the problem is due to my
                      > installation
                      > > > of
                      > > > > > > > > XML::Parser?
                      > > > > > > > >
                      > > > > > > > > (I'm using perl 5.6.1)
                      > > > > > > > >
                      > > > > > > > > Regards
                      > > > > > > > >
                      > > > > > > > > Trond Straume
                      > > > > > > > >
                      > > > > > > > > --- In soaplite@y..., "trond_straume"
                      > > > <trond.straume@o...>
                      > > > > > > wrote:
                      > > > > > > > > > Hi!
                      > > > > > > > > >
                      > > > > > > > > > when I'm including this code to mye Soap::Lite
                      > client:
                      > > > > > > > > >
                      > > > > > > > > > sub BEGIN {
                      > > > > > > > > > $diehandler = $SIG{'__DIE__'};
                      > > > > > > > > > $SIG{'__DIE__'} = \&print_error;
                      > > > > > > > > > }
                      > > > > > > > > >
                      > > > > > > > > > sub END {
                      > > > > > > > > > $SIG{'__DIE__'} = $diehandler;
                      > > > > > > > > > }
                      > > > > > > > > >
                      > > > > > > > > > it produces this strange errormessage:
                      > > > > > > > > >
                      > > > > > > > > > Can't use string ("<?xml version='1.0'
                      > encoding='UT")
                      > > > as a
                      > > > > > > symbol
                      > > > > > > > > ref
                      > > > > > > > > > while "strict refs" in use
                      > > > > > > > > > at
                      > /local/perl/5.6.1/lib/site_perl/5.6.1/sun4-solaris-
                      > > > > > > > > > ld/XML/Parser/Expat.pm line 456.
                      > > > > > > > > >
                      > > > > > > > > > The thing is that the response from the
                      > soap-server,
                      > > > > includes
                      > > > > > >
                      >
                      === message truncated ===


                      __________________________________________________
                      Do you Yahoo!?
                      U2 on LAUNCH - Exclusive greatest hits videos
                      http://launch.yahoo.com/u2
                    • tomkee2002 <tomkee2002@yahoo.com>
                      My solution to this problem was to add no strict refs inside the eval block above line 456 of Expat.pm. Probably not the best solution. Nevertheless, I
                      Message 10 of 11 , Dec 13, 2002
                      • 0 Attachment
                        My solution to this problem was to add "no strict 'refs'" inside the
                        eval block above line 456 of Expat.pm.

                        Probably not the best solution. Nevertheless, I heard from someone
                        yesterday who said version 2.27 of XML::Parser has the no strict
                        'refs' line, so perhaps its absence was an oversight on by the
                        XML::Parser maintainer.

                        TK
                      Your message has been successfully submitted and would be delivered to recipients shortly.