Provided by: libxmlrpc-core-c3-dev_1.33.14-10_amd64 bug

NAME

       xmlrpc - makes an XML-RPC remote procedure call and displays the response

SYNOPSIS

             xmlrpc url method parameters [-transport=transportname]
                                          [-username=username -password=passwd]
                                          [-curlinterface={interface|host}]
                                          [-curlnoverifypeer]
                                          [-curlnoverifyhost]

DESCRIPTION

       This  program  is used to execute Remote Procedure Calls (RPC) using a XML-RPC client. Its
       main purpose is debugging and learning since RPC are usually embedded in  source  code  of
       other programs.

ARGUMENTS

       url    This  is  the URL of the XML-RPC server. As XML-RPC uses HTTP, this must be an HTTP
              url. However, if you don't specify a type ("http:") in the URL, xmlrpc  assumes  an
              "http://"  prefix  and  a "/RPC2" suffix. RPC2 is the conventional file name for an
              XML-RPC responder.

       method The name of the XML-RPC method you want to invoke.

       parameters
              List of parameters for the RPC. xmlrpc turns each of these arguments into  an  XML-
              RPC parameter, in the order given. You may specify no parameters if you like.

              You  specify  the  data  type  of  the  parameter  with a prefix ending in a slash.
              Example: i/5. Here, the "i" signifies an integer data type. "5" is the value.

              xmlrpc is capable of only a subset of the possible XML-RPC  types,  as  follows  by
              prefix:

              i/ integer (<i4>) (32 bit).

              s/ string (<string>).

              h/ byte string (<base64>). Specify the value in hexadecimal.

              b/ boolean (<boolean>). Specify the value as "true" or "t" for true; "false" or "f"
              for false.

              d/ double (<double>) - i.e. real number.

              n/ nil (<nil>).

              I/ 64 bit integer (<i8>).

OPTIONS

       -transport=transportname
              This selects the XML transport facility (e.g. libwww) that xmlrpc uses  to  perform
              the  RPC.  The  name  transportname  is  one  that the Xmlrpc-c programming library
              recognizes. This is typically libwww, curl, and wininet. By  default,  xmlrpc  lets
              the Xmlrpc-c library choose.

       -username=username

       -password=passwd
              These  two  options,  which must be used together, cause the client to authenticate
              itself to the server, if the server requires it, using  HTTP  Basic  Authentication
              and the specified username and password.

       -curlinterface={interface|host}
              This  option  gives  the  "interface"  option  for  a Curl XML transport. The exact
              meaning of this option is up to the Curl library, and the best documentation for it
              is  the  manual  for  the  'curl'  program  that  comes  with the Curl library. But
              essentially, it chooses the local network interface through which to send the  RPC.
              It  causes the Curl library to perform a "bind" operation on the socket it uses for
              the communication. It can be the name  of  a  network  interface  (e.g.  on  Linux,
              "eth1")  or  an  IP address of the interface or a host name that resolves to the IP
              address of the interface. Unfortunately, you  can't  explicitly  state  which  form
              you're   specifying,   so   there's   some  ambiguity.   Examples:  -interface=eth1
              -interface=64.171.19.66  -interface=giraffe.giraffe-data.com  This  option   causes
              xmlrpc  to  default  to using the Curl XML transport. You may not specify any other
              transport.

       -curlnoverifypeer
              This option gives the "no_ssl_verifypeer" option for the Curl XML transport,  which
              is  essentially  the  CURLOPT_SSL_VERIFYPEER  option  of  the Curl library. See the
              curl_easy_setopt() man page for details on this, but essentially it means that  the
              client  does  not  authenticate  the  server's  certificate  of identity -- it just
              believes whatever the server says. You may want to use -curlnoverifyhost  as  well.
              Since  you're  not  authenticating the server's identity, there's not much sense in
              checking it. This option causes xmlrpc to default to using the Curl XML  transport.
              You may not specify any other transport.

       -curlnoverifyhost
              This  option gives the "no_ssl_verifyhost" option for the Curl XML transport, which
              is essentially the CURLOPT_SSL_VERIFYHOST option  of  the  Curl  library.  See  the
              curl_easy_setopt()  man page for details on this, but essentially it means that the
              client does not verify the server's identity. It just assumes that  if  the  server
              answers  the  IP  address  of the server as indicated by the URL (probably via host
              name), then it's the intended server. You may  want  to  use  -curlnoverifypeer  as
              well.  As  long  as  you  don't care who the server says it is, there's no point in
              authenticating its identity. This option causes xmlrpc to default to using the Curl
              XML transport. You may not specify any other transport.

EXAMPLES

       $ xmlrpc http://localhost:8080/RPC2 sample.add i/3 i/5

       Result: Integer: 8

       $ xmlrpc localhost:8080 sample.add i/3 i/5

       Result: Integer: 8

       $ xmlrpc http://xmlrpc.example.com/~bryanh echostring "s/This is a string"

       Result: String: This is a string

       $  xmlrpc  http://xmlrpc.example.com/~bryanh  echostring  "This  is  a  string in shortcut
       syntax"

       Result: String: This is a string in shortcut syntax

       $ xmlrpc http://xmlrpc.example.com sample.add i/3 i/5 -transport=curl  -curlinterface=eth1
       -username=bryanh -password=passw0rd

       Result: Integer: 8

LIMITATIONS

       If you run xmlrpc in an environment in which programs get their arguments encoded some way
       other than UTF-8, xmlrpc will generate garbage for the XML-RPC call  and  display  garbage
       for  the  XML-RPC  response.  Typically, you control this aspect of the environment with a
       LANG environment variable.  One safe value for LANG is "C".

SEE ALSO

       curl(1), http://xmlrpc-c.sourceforge.net/doc, http://xmlrpc.com

AUTHOR

       xmlrpc was written by Eric Kidd.

       This manual page was written by Bryan Henderson and adapted for Debian by Carlos  Henrique
       Lima Melara.