[ic] mv_credit_card_reference

Mike Heins interchange-users@interchange.redhat.com
Tue Oct 16 13:32:44 2001


Quoting Javier Martin (martin@trymedia.com):
> Mike Heins said:
> Ok, lesson learned... I've changed my GlobalSubs to UserTags, but I am STILL
> having problems :)  While I've successfully created an MD5 calculator tag, I
> have another one which tries to post a form to a given URL. This is very
> similar to the get_url tag in the usertag/ directory, but I need the POST
> method not GET, and I would like to obtain the HTTP code and message to
> check for errors too. I call this tag web-service:
> 
> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
> UserTag web-service Order url code message
> UserTag web-service addAttr
> UserTag web-service Documentation <<EOD
> 
> usage: $Tag->web_service($url, $code, $message, $params)
> EOD
> 
> UserTag web-service Routine <<EOR
> sub {
> 
>     my ($url, $code, $message, $data) = @_;
> 
>     eval {
>         require LWP::UserAgent;
>         require HTTP::Request::Common;
>     };

Here is your problem. You can't do a runtime require under Safe.

Suggest instead:

    UserTag web-service Order url code message
    UserTag web-service addAttr
    UserTag web-service Documentation <<EOD

    usage: $Tag->web_service($url, $code, $message, $params)
    EOD

    UserTag web-service Routine <<EOR
    require LWP::UserAgent;
    require HTTP::Request::Common;
    sub {
 
Or you can do in Interchange.cfg:

    Require module LWP::UserAgent
    Require module HTTP::Request::Common

[snip]
> 
> Then, what I get is:
> 
>   "Safe: require trapped by operation mask at (eval 256) line 3."
> 
> 

As expected.

-- 
Red Hat, Inc., 3005 Nichols Rd., Hamilton, OH  45013
phone +1.513.523.7621      <mheins@redhat.com>

Light travels faster than sound. This is why some people appear bright
until you hear them speak. -- unknown