56 } |
56 } |
57 |
57 |
58 %start commands |
58 %start commands |
59 |
59 |
60 %token HELP CREATE EXPORT ADD DELETE REMOVE SELECT SET INFO CANCEL END VERIFY |
60 %token HELP CREATE EXPORT ADD DELETE REMOVE SELECT SET INFO CANCEL END VERIFY |
61 %token COMMIT REVERT EXIT SEMICOLON TOKEN ZONEPATH AUTOBOOT POOL NET FS IPD ATTR |
61 %token COMMIT REVERT EXIT SEMICOLON TOKEN ZONENAME ZONEPATH AUTOBOOT POOL NET |
62 %token DEVICE RCTL SPECIAL RAW DIR OPTIONS TYPE ADDRESS PHYSICAL NAME |
62 %token FS IPD ATTR DEVICE RCTL SPECIAL RAW DIR OPTIONS TYPE ADDRESS PHYSICAL |
63 %token MATCH PRIV LIMIT ACTION VALUE EQUAL OPEN_SQ_BRACKET CLOSE_SQ_BRACKET |
63 %token NAME MATCH PRIV LIMIT ACTION VALUE EQUAL OPEN_SQ_BRACKET CLOSE_SQ_BRACKET |
64 %token OPEN_PAREN CLOSE_PAREN COMMA |
64 %token OPEN_PAREN CLOSE_PAREN COMMA |
65 |
65 |
66 %type <strval> TOKEN EQUAL OPEN_SQ_BRACKET CLOSE_SQ_BRACKET |
66 %type <strval> TOKEN EQUAL OPEN_SQ_BRACKET CLOSE_SQ_BRACKET |
67 property_value OPEN_PAREN CLOSE_PAREN COMMA simple_prop_val |
67 property_value OPEN_PAREN CLOSE_PAREN COMMA simple_prop_val |
68 %type <complex> complex_piece complex_prop_val |
68 %type <complex> complex_piece complex_prop_val |
69 %type <ival> resource_type NET FS IPD DEVICE RCTL ATTR |
69 %type <ival> resource_type NET FS IPD DEVICE RCTL ATTR |
70 %type <ival> property_name SPECIAL RAW DIR OPTIONS TYPE ADDRESS PHYSICAL NAME |
70 %type <ival> property_name SPECIAL RAW DIR OPTIONS TYPE ADDRESS PHYSICAL NAME |
71 MATCH ZONEPATH AUTOBOOT POOL VALUE PRIV LIMIT ACTION |
71 MATCH ZONENAME ZONEPATH AUTOBOOT POOL VALUE PRIV LIMIT ACTION |
72 %type <cmd> command |
72 %type <cmd> command |
73 %type <cmd> add_command ADD |
73 %type <cmd> add_command ADD |
74 %type <cmd> cancel_command CANCEL |
74 %type <cmd> cancel_command CANCEL |
75 %type <cmd> commit_command COMMIT |
75 %type <cmd> commit_command COMMIT |
76 %type <cmd> create_command CREATE |
76 %type <cmd> create_command CREATE |
400 cmd = $$; |
400 cmd = $$; |
401 $$->cmd_handler = &info_func; |
401 $$->cmd_handler = &info_func; |
402 $$->cmd_res_type = $2; |
402 $$->cmd_res_type = $2; |
403 $$->cmd_prop_nv_pairs = 0; |
403 $$->cmd_prop_nv_pairs = 0; |
404 } |
404 } |
|
405 | INFO ZONENAME |
|
406 { |
|
407 if (($$ = alloc_cmd()) == NULL) |
|
408 YYERROR; |
|
409 cmd = $$; |
|
410 $$->cmd_handler = &info_func; |
|
411 $$->cmd_res_type = RT_ZONENAME; |
|
412 $$->cmd_prop_nv_pairs = 0; |
|
413 } |
405 | INFO ZONEPATH |
414 | INFO ZONEPATH |
406 { |
415 { |
407 if (($$ = alloc_cmd()) == NULL) |
416 if (($$ = alloc_cmd()) == NULL) |
408 YYERROR; |
417 YYERROR; |
409 cmd = $$; |
418 cmd = $$; |
663 property_name: SPECIAL { $$ = PT_SPECIAL; } |
672 property_name: SPECIAL { $$ = PT_SPECIAL; } |
664 | RAW { $$ = PT_RAW; } |
673 | RAW { $$ = PT_RAW; } |
665 | DIR { $$ = PT_DIR; } |
674 | DIR { $$ = PT_DIR; } |
666 | TYPE { $$ = PT_TYPE; } |
675 | TYPE { $$ = PT_TYPE; } |
667 | OPTIONS { $$ = PT_OPTIONS; } |
676 | OPTIONS { $$ = PT_OPTIONS; } |
|
677 | ZONENAME { $$ = PT_ZONENAME; } |
668 | ZONEPATH { $$ = PT_ZONEPATH; } |
678 | ZONEPATH { $$ = PT_ZONEPATH; } |
669 | AUTOBOOT { $$ = PT_AUTOBOOT; } |
679 | AUTOBOOT { $$ = PT_AUTOBOOT; } |
670 | POOL { $$ = PT_POOL; } |
680 | POOL { $$ = PT_POOL; } |
671 | ADDRESS { $$ = PT_ADDRESS; } |
681 | ADDRESS { $$ = PT_ADDRESS; } |
672 | PHYSICAL { $$ = PT_PHYSICAL; } |
682 | PHYSICAL { $$ = PT_PHYSICAL; } |