xref: /linux/tools/net/sunrpc/xdrgen/tests/bad-program-number-negative.x (revision d141ec2825b4d3ec52f27c43bdd864090159273a)
1*1663ea5bSChuck Lever /*
2*1663ea5bSChuck Lever  * NEGATIVE TEST CASE -- xdrgen must REJECT this specification.
3*1663ea5bSChuck Lever  *
4*1663ea5bSChuck Lever  * RFC 5531 assigns only unsigned constants to program, version, and
5*1663ea5bSChuck Lever  * procedure numbers (Section 12.3). This spec gives the program a
6*1663ea5bSChuck Lever  * negative number, which the front end must reject.
7*1663ea5bSChuck Lever  *
8*1663ea5bSChuck Lever  * Expected diagnostic:
9*1663ea5bSChuck Lever  *   negative program number -100000 in program 'BADPROG'
10*1663ea5bSChuck Lever  *
11*1663ea5bSChuck Lever  * The tests directory has no automated runner; exercise by hand:
12*1663ea5bSChuck Lever  *   ./xdrgen definitions tests/bad-program-number-negative.x   (must fail)
13*1663ea5bSChuck Lever  */
14*1663ea5bSChuck Lever 
15*1663ea5bSChuck Lever program BADPROG {
16*1663ea5bSChuck Lever 	version BADVERS {
17*1663ea5bSChuck Lever 		void BADPROC_NULL(void) = 0;
18*1663ea5bSChuck Lever 	} = 1;
19*1663ea5bSChuck Lever } = -100000;
20