home | help
IRRToolSet(1)		     General Commands Manual		   IRRToolSet(1)

NAME
     irrtoolset-errors - IRRToolSet error and warning messages

DESCRIPTION
     The  goal	of  this  document is to clarify the possible errors you may en-
     counter when using IRRToolSet. Some of these errors are listed on the  man-
     ual pages for the tools. If you didn't find the error on the manual page of
     the  tool you were using, please refer to this page. Some errors with obvi-
     ous explanation are listed here for reference, but to not have any documen-
     tation. Still, if description is unclear or unsufficient, please report  to
     irrtoolset@lists.isc.org.

IRR communication errors
     Command errors

     Error: unknown irr protocol <protocol>, using irrd
     known protocols: irrd(rawhoisd), ripe(bird)

	    The  protocol  specified  with  "-protocol" option is unknown or not
	    supported. Use one of the known protocols to connect to IRR  server.
	    This option is case-insensitive. This is important which protocol to
	    use,  because some client/server protocols are incompatible, and you
	    can get wrong result. Check IRR server  documentation  and	use  the
	    protocols which are compatible with it. Please note that there are 3
	    protocols  supported, and the rest are aliases (rawhoisd is the same
	    as irrd and bird is the same as ripe).

     System errors

     Error: gethostbyname (<hostname>) failed.

     Error: socket() failed.

     Error: connect() failed.

     Error: fgets() failed.

     Error: fread() failed.

     Error: fwrite() failed.

     Connection to <host><port> failed!

	    There could be several reasons for this error: host is  unreachable,
	    or	some  packet  filtering is on and you can't send the packets, or
	    the server may be not responding. Check your network setup and  host
	    reachability.

     Warning: setsockopt SO_KEEPALIVE failed!

	    All protocols supported by IRRToolSet use a persistent connection to
	    the  IRR  server. When the socket for IRR connection is created, the
	    SO_KEEPALIVE option is set to enable a  persistent	connection  (the
	    client  needs  to  check  continually  that the destination is still
	    alive). See setsockopt(2) manual page  for	details  about	possible
	    failures.

     IRR-specific errors

     Error: setting source to <sources> failed.

	    One  (or  several)	sources from <sources> list are not found on IRR
	    server. If the source setting for IRR server failed, the source list
	    will be default one.  Check IRR server documentation for the  proper
	    command  to  get  the  list  of  all  available  sources and default
	    sources. This check is only implemented for irrd(rawhoisd).  If  you
	    mistyped  the  source  name, re-run the program using "-s <sources>"
	    option.

     Error: current source setting is <sources>.

	    This is rather informational message,  preceeded  by  error  message
	    about failed sources setting. It shows the source list which is used
	    currently  by  the	program for querying. If you want to modify this
	    list, use "-s <sources>" option.

     Warning: irrd(rawhoisd) does not yet support rtr-set expansion.

	    Although as-set and route-set expansion is an  internal  feature  of
	    irrd,  rtr-set expansion is not implemented yet. In IRRToolSet it is
	    done by external functions, but it still works. So	you  can  safely
	    ignore  this warning, this is just a reminder to keep an eye on irrd
	    development and update the code to use internal feature when  it  is
	    implemented.

     Warning: key not found error for query <last_query>

	    Object not found in the database for specified sources. <last_query>
	    specifies  the actual query to the server which returned to objects.
	    The reason can be:
	    * object, source or host name are mistyped and therefore object can-
	      not be found;
	    * this is true error and  you're  referencing  non-existent  object,
	      which  is  supposed  to be in the database; check your objects and
	      policy description.

     Warning: no byte count error for query <last_query>.

	    irrd server returns the length of the reply for  successful  queries
	    with  "A<reply  length in bytes including newlines>". The program is
	    expecting it if query is successful. If  it  is  not  received,  the
	    warning  is issued. This error can also indicate protocol/server in-
	    compatibility (for example, RIPE whois server with	irrd  protocol).
	    Please check IRR server documentation for details.

     Warning: no end of data line error for query <last_query>.

	    After  a  successful  query irrd server issues special "end of data"
	    command, "C". If it is not received after <length of reply> bytes of
	    data, the program complains. This can indicate that query  was  bro-
	    ken, or incomplete, or some other server error occured. Please check
	    IRR  server  documentation for details or ask IRR server administra-
	    tion for help.

RPSL parser errors
     Lexer errors

     Error: unknown class <yytext>

	    Wrong first attribute of the object. This  attribute  is  considered
	    RPSL  class  name,	and  determines the object type. The rest of ob-
	    ject's attributes can have any order, but the first one should be on
	    the first place.

     Error: unknown attribute <attr> of class <class>

	    Wrong attribute of the object. The attribute is a string followed by
	    ":" which  describes the type of data after ":". Object consists  of
	    "attribute:value"  pairs.  For more information on RPSL classes, see
	    RFC 2622.

     Error: Non-ASCII character encountered

     Error: unterminated string encountered

     Error: octal escape sequence is out of bounds

     Error: bad octal escape sequence

     Warning: attribute <attr> of class <class> is now obsolete.

	    This attribute is described in RPSL dictionary  as	valid  RPSL  at-
	    tribute,  but it is now obsoleted and should not be used any longer.
	    See RFC 2622 for more information about RPSL attributes.

     Parser errors

     Error: syntax error

	    String starts with non-attribute or object is incomplete.

     Error: "changed: <email> <YYYYMMDD>" expected

	    Wrong "changed" attribute. <email> is e-mail address in RFC 822 for-
	    mat, <YYYYMMDD> is a date.

     Error: argument to <name> should match <match>

	    Syntax for some RPSL attributes is defined by  regular  expressions.
	    The  error indicates that attribute's value didn't match the regular
	    expression.

     Error: argument to <name> should be <match>

	    Generic RPSL attributes have fixed syntax, and exact  match  is  ex-
	    pected.

     Error: argument to <name> should be blob sequence.

	    Indicates a syntax error in "auth" attribute specification.

     Warning: unknown protocol <string>, BGP4 assumed.

	    Unknown  protocol  specified  in  import/export  policy. Defaults to
	    BGP4. The known protocols are listed in RFC  2622,	Dictionary  sec-
	    tion.

     Error: from <peering> expected.

	    Syntax  error  in  "import" attribute specification. See RFC2622 for
	    more details about "import" attribute syntax.

     Error: to <peering> expected.

	    Syntax error in "export" attribute specification.	The  syntax  for
	    "export"   attribute   is  symmetrical  for  import,  with	changes:
	    from->to, accept->announce.  For more details see RFC2622.

     Error: badly formed filter/action or keyword NETWORKS/ACTION missing.

	    Syntax error in "default" attibute specification The syntax for "de-
	    fault" attribute is:
	    default: to <peering> [action <action>]
	    [networks <filter>]
	    For more details see RFC2622.

     Error: TO <peer> missing.

	    Syntax error in "default" attribute specification.	Please see  "de-
	    fault" attribute syntax above.

     Error: badly formed filter.

	    Syntax  error  in  RPSL filter specification.  RPSL filter is an ex-
	    pression over AS-number, prefixes,	AS-sets,  range  operators  etc.
	    When  applying  to	a set of routes, it returns the resulting set of
	    routes matched by this filter. There are several types of RPSL  fil-
	    ters  -  prefix filters, AS_path filters, etc. For more details, see
	    RFC2622.

     Error: in action specification.

	    Syntax error in action specification. "Action" keyword specifies the
	    action to be executed if the route is matched  by  the  filter.  The
	    general "action" syntax is:
	    action <rp_attribute> <method> (<rp_method_arguments>);
	    | action <rp_attribute> <operator> <argument>;
	    For more details see RFC2622.

     Error: integer mask length expected.

	    The integer mask length is a number of bits taken by network number.

     Error: MASKLEN <length> expected.

	    Syntax  error  in  "ifaddr" attribute specification.  The syntax for
	    "ifaddr" attribute is:
	    ifaddr: <ipv4-address> masklen <integer> [action <action>]

     Error: <ip_address> MASKLEN <length> [<action>] expected.

	    Syntax error in "ifaddr" specification. See "ifaddr" attribute  syn-
	    tax above.

     Error: unknown protocol <protocol>.

	    Unknown  protocol  in  peer specification. Known protocols are: BGP4
	    (default), OSPF, RIP, IGRP, IS-IS,	STATIC,  RIPng,  DVMRP,  PIM-DM,
	    PIM-SM, CBT, MOSPF.

     Error: protocol <protocol> does not have option <option>

	    This  option  is  not  defined for this protocol in RPSL dictionary.
	    For defined protocols and options, please see  RPSL  dictionary  de-
	    scription in RFC2622.

     Error: mandatory option <option> of protocol <protocol> is missing.

	    The mandatory option for this protocol is missing.	For defined pro-
	    tocols  and  options,  please  see	RPSL  dictionary  description in
	    RFC2622.

     Error: in peer option.

	    Syntax error in "peer" attribute. This attribute describes	router's
	    peering.  The syntax is:
	    <protocol> <ipv4-address> <options>
	    | <protocol> <inet-rtr-name> <options>
	    | <protocol> <rtr-set-name> <options>
	    | <protocol> <peering-set-name> <options>
	    Where:
	    <protocol>
		      is any of the protocols supported by RPSL dictionary, e.g.
		      BGP4.
	    <ipv4-address>
		      is  a  valid  IPv4 address in "dot" decimal notation, e.g.
		      1.1.1.1
	    <inet-rtr-name>
		      is a name of "inet-rtr" object, e.g  fully  qualified  DNS
		      name  without trailing "." (RFC1034). It should not exceed
		      254 characters.
	    <rtr-set-name>
		      is a name of "rtr-set" object. Consists of  letters,  dig-
		      its,  the  underscore  "_"  and  hyphen  "-".  Starts with
		      "rtrs-" prefix, and the last character of a name must be a
		      letter or a digit.
	    <peering-set-name>
		      is a name of "peering-set" object.It has the  same  syntax
		      as "rtr-set" object's name above, but its prefix should be
		      "prng-".

     Error: missing peer ip_address.

	    Peer address is missing in peer specification.
	    <ipv4-address>  is	a  valid IPv4 address in "dot" decimal notation,
	    e.g. 1.1.1.1

     Error: missing protocol name.

	    Protocol name is missing in peer specification. Protocol name should
	    be a valid protocol defined  in  RPSL  dictionary,	e.g.  BGP4  (see
	    RFC2622).

     Error: <as-expression> expected.

	    Syntax error in "aggr-bndry" attribute of "route" object. The syntax
	    is:
	    <as-expression>.  Where:
	    <as-expression>
		      is  an expression over AS numbers and sets. It defines the
		      list of ASes performing the aggregation. If this attribute
		      is missing, the origin AS is the sole  aggregation  bound-
		      ary. See RFC2622 for more detailed description of this at-
		      tribute in "route" object.

     Error: OUTBOUND <as-expression> expected.

	    Syntax  error  in "aggr-mtd" attribute of "route" object. The syntax
	    is:
	    aggr-mtd: inbound
		      | outbound [<as-expression>]
	    Where:
	    inbound, outbound
		      RPSL keywords specifying	the  type  of  aggregation.  See
		      RFC2622 for more detailed description of this attribute of
		      "route" object.
	    <as-expression>
		      is an expression over as-sets and as-numbers.
	    See  RFC2622  for  more  detailed  description  of this attribute of
	    "route" object.

     Error: INBOUND can not be followed by anything.

	    Syntax error in "aggr-mtd" attribute of "route" object. See the  de-
	    tails above.

     Error: keyword INBOUND or OUTBOUND expected.

	    Syntax  error in "aggr-mtd" attribute of "route" object. See the de-
	    tails above.

     Error: [at <router-exp>] [action <action>] [upon <condition>] expected.

	    Syntax error in "inject" attribute of route object.  This  attribute
	    specifies  which  routers perform the aggregation and when they per-
	    form it. See RFC 2622 for more details about the meaning of this at-
	    tribute.
	    <router-expr>
		      is an expression over router IP addresses, inet-rtr names,
		      and rtr-set names using operators  AND,  OR,  and  EXCEPT.
		      The binary "EXCEPT" operator is the set subtraction opera-
		      tor  and	has the same precedence as the operator AND. EX-
		      CEPT = AND NOT.
	    <action>  defines an action to execute to modify various BGP attrib-
		      utes. See RFC2622 for more details on action specificatin.
	    <condition>
		      is a boolean condition. The aggregate is generated if  and
		      only  if this condition is true. See RFC 2622 for more de-
		      tails on "condition" specification.

     Error: [ATOMIC] [[<filter>] [PROTOCOL <protocol> <filter>] ...] expected.

	    Syntax error in "components" attribute of the "route"  object.  This
	    attribute specifies which routes are used to form the aggregate.
	    <filter>  is  RPSL filter expression over AS-number, AS-sets, route-
		      set, prefixes, range operations, etc.
	    <protocol>
		      is a routing protocol name, as defined in RPSL dictionary.
		      See RFC 2622 for more detailed  description  of  this  at-
		      tribute.

     Error: invalid member

	    The  member  of  the  route-set should be a valid IPV4 prefix in "/"
	    slash notation.

     RPSL dictionary errors

     These errors are also RPSL parser errors. They can be  encountered  if  you
     modify RPSL dictionary, recompile and try to use the parser.

     Error: invalid rp-attribute specification

	    Syntax  error  in rp-attribute specification. rp-attributes are used
	    in RPSL dictionary specification to describe  routing  protocol  at-
	    tributes  and  methods.  E.g. RPSL rp-attributes for BGP4 match BGP4
	    attributes, and their methods are actions to perform. For  instance,
	    "action  aspath.prepend(AS123);"  prepends the BGP AS_path attribute
	    with AS123 for the routes matched by the filter. For  more	informa-
	    tion  about  rp-attributes	(Routing Policy attributes) and how they
	    reflect real BGP attributes, see RFC 2622.

     Error: invalid method specification for <rp-attribute>

	    Syntax error in rp-attribute specification, in method. See RFC  2622
	    for details about rp-attributes specification syntax.

     Error: invalid operator specification for <rp-attribute>

	    Syntax  error  in  rp-attribute  specification, in operator. See RFC
	    2622 for details about rp-attributes specification syntax.

     Error: invalid operator

	    Syntax error in rp-attribute specification,  in  operator.	See  RFC
	    2622 for details about rp-attributes specification syntax.

     Error: method specification expected

	    Method definition in rp-attribute has wrong syntax or is incomplete.
	    The format is <method_name>(<arguments>).

     Error: invalid typedef specification

	    Error  in "typedef" attribute. This attribute defines the data types
	    for method arguments, which are then used  with  rp-attributes.  See
	    RFC 2622 for more information of "typedef" specification.

     Error: empty union specification

	    Syntax  error in union specification for type definition. The syntax
	    is: typedef: union <list of types to be included in union>. This er-
	    ror can be encountered if the list is empty.

     Error: invalid type <string>

	    Invalid string found where the type definition keyword expected.

     Error: invalid type <string>[<integer>,<integer>]

	    Invalid string found where the type definition keyword expected.

     Error: invalid type <string>[<float>,<float>]"

	    Invalid string found where the type definition keyword expected.

     Error: invalid type <string>, enum expected

	    [ <enum_list> ] should be preceeded by "enum" keyword.

     Error: invalid list size

	    Syntax  error  in  list  specification.  The  syntax  is:  list   of
	    <valid_type>-<valid-type> ... <valid-type>.

     Error: invalid protocol option

     Error: invalid protocol name

     Error: in attr option specification.

	    Synatx  error  in  attribute  "attr"  specification  of "dictionary"
	    class. The syntax is:
	    attr:  <attr_name>	[syntax(syntax_type),]	optional/mandatory  sin-
	    gle/multiple type

     Error: no known syntax rule for <syntax>.

	    Syntax definition is not found (see rpsl/rpsl/rptype.cc);

     Error: could not compile regexp <regexp>.

	    Requested syntax type is "regexp", but failed to compile the regular
	    expression.

     Error: attr name expected.

	    Syntax  error  in attribute "attr" specification, see syntax defini-
	    tion above.

     Error: argument <argument>  to  <rp-attribute>.operator<method>  should  be
     <type>.

	    Wrong  operatior  used  with  this	rp-attribute. Check rp-attribute
	    specification and operators/methods (RFC 2622).

     Error: wrong number of arguments to <rp.attribute>.operator<method>.

	    Wrong number of arguments used with rp-attribute's	operator.  Check
	    rp-attribute specification and its operators/methods (RFC 2622).

     Error: argument <argument> to <rp-attribute>.<method> should be <type>.

	    Wrong  argument  used  with  operator/method with this rp-attribute.
	    Check rp-attribute's methods specification (RFC 2622).

     Error: wrong number of arguments to <rp-attribute>.<method>.

	    Wrong number of arguments used  with  this	method.  Check	method's
	    specification (RFC 2622).

     Error: rp-attribute <rp-attribute> does not have <method> defined.

	    Undefined  method used with rp-attribute. Check rp-attribute's meth-
	    ods' specification (RFC 2622) for this rp-attribute.

REFERENCES
     * RFC    2622    "Routing	  Policy    Specification    Language	 (RPSL)"
       ftp://ftp.ripe.net/rfc/rfc2622.txt

     * RFC  822  "Standard  for  the  format  of  ARPA	INTERNET  text messages"
       ftp://ftp.ripe.net/rfc/rfc822.txt

     * RFC    1034    "Domain	 names	  -	concepts     and     facilities"
       ftp://ftp.ripe.net/rfc/rfc1034.txt

AUTHORS
     Katie Petrusha <katie@ripe.net>

				      local			   IRRToolSet(1)

home | help