This archive is retained to ensure existing URLs remain functional. It will not contain any emails sent to this mailing list after July 1, 2024. For all messages, including those sent before and after this date, please visit the new location of the archive at https://mailman.ripe.net/archives/list/db-wg@ripe.net/
problems with complex import/export attributes
- Next message (by thread): problems with complex import/export attributes
Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Frank Bohnsack
Frank.Bohnsack at de.uu.net
Thu Feb 1 14:32:39 CET 2001
Hi, Yes, I know this is not a RPSL forum, but i think someone of you could help me ;-) I found a problem for RPSL parsers conform with RFC2622. In the RFC2622 (section 6.6) is an example of an import attribute: > import: from AS1 action pref = 1; accept as-foo; > except { > from AS2 action pref = 2; accept AS226; > except { > from AS3 action pref = 3; accept {128.9.0.0/16}; > } > } Appendix B "Grammar Rules" describes the syntax like below: > ... > import_attribute: ATTR_IMPORT > | ATTR_IMPORT opt_protocol_from opt_protocol_into import_factor > > import_expression: import_term > | import_term KEYW_REFINE import_expression > | import_term KEYW_EXCEPT import_expression > > import_term: import_factor ';' > | '{' import_factor_list '}' > > import_factor_list: import_factor ';' > | import_factor_list import_factor ';' > > import_factor: import_peering_action_list KEYW_ACCEPT filter > > import_peering_action_list: KEYW_FROM peering opt_action > | import_peering_action_list KEYW_FROM peering opt_action > > ... I feel in import_attribute lakes a line like: | ATTR_IMPORT opt_protocol_from opt_protocol_into import_expression and a look into ftp://ftp.isi.edu/ra/RAToolSet/RAToolSet-4.6.3.tar.gz file src/rpsl/rpsl/rpsl.y agree with me: > ... > import_attribute: ATTR_IMPORT > opt_protocol_from opt_protocol_into > import_expr TKN_EOA { > $$ = changeCurrentAttr(new AttrImport($2, $3, $4)); > } > | ATTR_IMPORT opt_protocol_from opt_protocol_into import_factor TKN_EOA { > PolicyTerm *term = new PolicyTerm; > term->append($4); > > $$ = changeCurrentAttr(new AttrImport($2, $3, term)); > } > | ATTR_IMPORT error TKN_EOA { > $$ = $1; > handle_error("Error: from <peering> expected.\n"); > yyerrok; > } > ; > .. OK as so far, but rpslcheck as well as my perl parser module breaks while parsing the example above ;-( > fb at sun5 1315> rpslcheck < example > ... > import: from AS1 action pref = 1; > accept as-foo; > except { > from AS2 action pref = 2; accept AS226; > except { > ^^^^^^ > ***Error: from <peering> expected. > from AS3 action pref = 3; accept {128.9.0.0/16}; > } > } > ... For me looks the grammar correct, but my knowledge about automata theory, languages and computation is worser than my english ;-) Has anybody a solution for this problem ? cheers frank
- Next message (by thread): problems with complex import/export attributes
Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
[ db-wg Archives ]