Merge pull request #8 from compudj/master
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mon, 18 Nov 2013 12:09:36 +0000 (04:09 -0800)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mon, 18 Nov 2013 12:09:36 +0000 (04:09 -0800)
Pull content of hack-a-thon into efficios branch

319 files changed:
tests/1.8/fail/empty/metadata [deleted file]
tests/1.8/fail/fail1/dummystream [deleted file]
tests/1.8/fail/fail1/metadata [deleted file]
tests/1.8/fail/fail2/metadata [deleted file]
tests/1.8/fail/integer-range/metadata [deleted file]
tests/1.8/fail/lttng-modules-2.0-pre1/metadata [deleted file]
tests/1.8/fail/packet-based-metadata/metadata [deleted file]
tests/1.8/fail/run.sh [deleted file]
tests/1.8/fail/smalltrace/dummystream-fail [deleted file]
tests/1.8/fail/smalltrace/metadata [deleted file]
tests/1.8/fail/string-concat/metadata [deleted file]
tests/1.8/fail/test.sh [deleted file]
tests/1.8/fail/types01/metadata [deleted file]
tests/1.8/fail/types02/metadata [deleted file]
tests/1.8/fail/types03/metadata [deleted file]
tests/1.8/fail/types04/metadata [deleted file]
tests/1.8/fail/types05/metadata [deleted file]
tests/1.8/fail/types06/metadata [deleted file]
tests/1.8/fail/types07/metadata [deleted file]
tests/1.8/fail/types08/metadata [deleted file]
tests/1.8/fail/types09/metadata [deleted file]
tests/1.8/fail/types10/metadata [deleted file]
tests/1.8/fail/types11/metadata [deleted file]
tests/1.8/fail/types12/metadata [deleted file]
tests/1.8/fail/types13/metadata [deleted file]
tests/1.8/fail/types14/metadata [deleted file]
tests/1.8/fail/types15/metadata [deleted file]
tests/1.8/fail/types16/metadata [deleted file]
tests/1.8/fail/types17/metadata [deleted file]
tests/1.8/fail/types18/metadata [deleted file]
tests/1.8/fail/types19/metadata [deleted file]
tests/1.8/fail/types20/metadata [deleted file]
tests/1.8/fail/types21/metadata [deleted file]
tests/1.8/fail/types22/metadata [deleted file]
tests/1.8/fail/types23/metadata [deleted file]
tests/1.8/fail/types24/metadata [deleted file]
tests/1.8/fail/types25/metadata [deleted file]
tests/1.8/fail/types26/metadata [deleted file]
tests/1.8/fuzzing/run.sh [new file with mode: 0755]
tests/1.8/pass/empty-stream-no-header/emptystream [deleted file]
tests/1.8/pass/empty-stream-no-header/metadata [deleted file]
tests/1.8/pass/empty-stream/emptystream [deleted file]
tests/1.8/pass/empty-stream/metadata [deleted file]
tests/1.8/pass/env-warning/dummystream [deleted file]
tests/1.8/pass/env-warning/metadata [deleted file]
tests/1.8/pass/lttng-modules-2.0-pre5/channel0_0 [deleted file]
tests/1.8/pass/lttng-modules-2.0-pre5/channel0_1 [deleted file]
tests/1.8/pass/lttng-modules-2.0-pre5/channel0_2 [deleted file]
tests/1.8/pass/lttng-modules-2.0-pre5/channel0_3 [deleted file]
tests/1.8/pass/lttng-modules-2.0-pre5/channel0_4 [deleted file]
tests/1.8/pass/lttng-modules-2.0-pre5/channel0_5 [deleted file]
tests/1.8/pass/lttng-modules-2.0-pre5/channel0_6 [deleted file]
tests/1.8/pass/lttng-modules-2.0-pre5/channel0_7 [deleted file]
tests/1.8/pass/lttng-modules-2.0-pre5/metadata [deleted file]
tests/1.8/pass/minimal/metadata [deleted file]
tests/1.8/pass/run.sh [deleted file]
tests/1.8/pass/smalltrace/dummystream [deleted file]
tests/1.8/pass/smalltrace/metadata [deleted file]
tests/1.8/pass/string-literal-escape/dummystream [deleted file]
tests/1.8/pass/string-literal-escape/metadata [deleted file]
tests/1.8/pass/succeed1/dummystream [deleted file]
tests/1.8/pass/succeed1/metadata [deleted file]
tests/1.8/pass/succeed2/dummystream [deleted file]
tests/1.8/pass/succeed2/metadata [deleted file]
tests/1.8/pass/succeed4/metadata [deleted file]
tests/1.8/pass/test.sh [deleted file]
tests/1.8/pass/test/channel0_0 [deleted file]
tests/1.8/pass/test/channel0_1 [deleted file]
tests/1.8/pass/test/channel0_2 [deleted file]
tests/1.8/pass/test/channel0_3 [deleted file]
tests/1.8/pass/test/channel0_4 [deleted file]
tests/1.8/pass/test/channel0_5 [deleted file]
tests/1.8/pass/test/channel0_6 [deleted file]
tests/1.8/pass/test/channel0_7 [deleted file]
tests/1.8/pass/test/metadata [deleted file]
tests/1.8/pass/warnings/dummystream [deleted file]
tests/1.8/pass/warnings/metadata [deleted file]
tests/1.8/pass/wk-heartbeat-u/metadata [deleted file]
tests/1.8/pass/wk-heartbeat-u/u_0 [deleted file]
tests/1.8/pass/wk-heartbeat-u/u_1 [deleted file]
tests/1.8/pass/wk-heartbeat-u/u_2 [deleted file]
tests/1.8/pass/wk-heartbeat-u/u_3 [deleted file]
tests/1.8/pass/wk-heartbeat-u/u_4 [deleted file]
tests/1.8/pass/wk-heartbeat-u/u_5 [deleted file]
tests/1.8/pass/wk-heartbeat-u/u_6 [deleted file]
tests/1.8/pass/wk-heartbeat-u/u_7 [deleted file]
tests/1.8/regression/metadata/fail/array-redefinition/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/array-size-identifier/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/array-size-keyword/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/array-size-negative/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/array-size-not-present/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/array-size-string/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/array-size-type-field/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/array-size-type/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/empty/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/enum-untyped-missing-int/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/enum-untyped-string/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/enum-values-floating/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/enum-values-token/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/enum-values-too-big/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/enum-values-too-small/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/fail2/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/integer-range/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/lexer-literal-guid-corrupted/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/lexer-literal-guid-too-big/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/lexer-literal-guid-too-small/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/lexer-literal-int-incomplete/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/lexer-unterminated-bracket/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/lexer-unterminated-declaration/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/lexer-unterminated-expression/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/lexer-unterminated-string/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/lexer-version-broken/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/lexer-version-too-big/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/lttng-modules-2.0-pre1/metadata [new file with mode: 0755]
tests/1.8/regression/metadata/fail/packet-based-metadata/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/run.sh [new file with mode: 0755]
tests/1.8/regression/metadata/fail/string-concat/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/struct-align-enum/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/struct-align-huge/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/struct-align-negative/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/struct-align-string/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/struct-align-zero/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/struct-inner-struct-undefined/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/struct-recursive/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/struct-reserved-keywords/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/test.sh [new file with mode: 0755]
tests/1.8/regression/metadata/fail/typedef-redefinition/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/typedef-reserved-keyword/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types01/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types02/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types03/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types04/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types05/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types06/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types07/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types08/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types09/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types10/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types11/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types12/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types13/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types14/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types15/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types16/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types17/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types18/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types19/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types20/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types21/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types22/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types23/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types24/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types25/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/types26/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/variant-missing-selector/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/variant-missing-tag/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/variant-string-fields/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/variant-tag-integer/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/variant-tag-keyword/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/variant-tag-string/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/variant-tag-type-floating/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/fail/variant-tag-type-string/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/array-basic-1dim/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/array-basic-2dim-2typedef/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/array-basic-2dim-typedef/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/array-basic-2dim/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/array-of-enum/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/array-of-struct/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/enum-empty/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/enum-nameless/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/enum-token-kind/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/enum-untyped-int/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/enum-values-signed-big/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/enum-values-signed-small/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/enum-values-signed-value/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/enum-values-unsigned-big/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/minimal/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/name-escaping-clashes/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/name-escaping-empty/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/run.sh [new file with mode: 0755]
tests/1.8/regression/metadata/pass/sequence-basic-1dim/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/sequence-basic-2dim/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/sequence-scoped-length/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/sequence-typedef-length/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/string-literal-escape/dummystream [new file with mode: 0644]
tests/1.8/regression/metadata/pass/string-literal-escape/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/struct-align-larger/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/struct-align-smaller/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/struct-align-valid/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/struct-inner-struct/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/struct-unamed-struct-as-field/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/struct-underscores-in-fields/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/succeed4/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/test.sh [new file with mode: 0755]
tests/1.8/regression/metadata/pass/typealias-reserved-keyword/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/typealias-simple/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/typedef-simple/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/unknown-env/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/variant-integers-unnamed/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/variant-integers/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/variant-missing-selector/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/variant-scope-tag/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/variant-structs/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/variant-two-levels-redefinition/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/variant-two-levels/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/pass/warnings/metadata [new file with mode: 0644]
tests/1.8/regression/metadata/run.sh [new file with mode: 0755]
tests/1.8/regression/run.sh [new file with mode: 0755]
tests/1.8/regression/stream/fail/2-packets-no-packet-size/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/2-packets-no-packet-size/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/content-size-larger-than-packet-size/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/content-size-larger-than-packet-size/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-alignment-empty-struct/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-alignment-empty-struct/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-alignment-integer/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-alignment-integer/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-array-of-integers/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-array-of-integers/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-float/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-float/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-integer/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-integer/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-len-of-sequence/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-len-of-sequence/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-sequence-between-elements/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-sequence-between-elements/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-sequence-start/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-sequence-start/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-sequence-within-element/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-sequence-within-element/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-string/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-string/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-struct/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-struct/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-variant-selected-element/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/cross-packet-event-variant-selected-element/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/fail1/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/fail1/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-alignment-empty-struct/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-alignment-empty-struct/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-alignment-integer/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-alignment-integer/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-array-of-integers/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-array-of-integers/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-float/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-float/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-integer/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-integer/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-len-of-sequence/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-len-of-sequence/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-sequence-between-elements/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-sequence-between-elements/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-sequence-start/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-sequence-start/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-sequence-within-element/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-sequence-within-element/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-string/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-string/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-struct/dummystream-fail [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-struct/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-variant-selected-element/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/fail/out-of-bound-variant-selected-element/metadata [new file with mode: 0644]
tests/1.8/regression/stream/fail/smalltrace/dummystream-fail [new file with mode: 0644]
tests/1.8/regression/stream/fail/smalltrace/metadata [new file with mode: 0644]
tests/1.8/regression/stream/pass/2-packets-no-content-size/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/pass/2-packets-no-content-size/metadata [new file with mode: 0644]
tests/1.8/regression/stream/pass/2-packets/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/pass/2-packets/metadata [new file with mode: 0644]
tests/1.8/regression/stream/pass/empty-stream-no-header/emptystream [new file with mode: 0644]
tests/1.8/regression/stream/pass/empty-stream-no-header/metadata [new file with mode: 0644]
tests/1.8/regression/stream/pass/empty-stream/emptystream [new file with mode: 0644]
tests/1.8/regression/stream/pass/empty-stream/metadata [new file with mode: 0644]
tests/1.8/regression/stream/pass/empty-struct/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/pass/empty-struct/metadata [new file with mode: 0644]
tests/1.8/regression/stream/pass/in-bound-alignment-2-bit-empty-struct/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/pass/in-bound-alignment-2-bit-empty-struct/metadata [new file with mode: 0644]
tests/1.8/regression/stream/pass/in-bound-empty-struct/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/pass/in-bound-empty-struct/metadata [new file with mode: 0644]
tests/1.8/regression/stream/pass/in-bound-variant-selected-element/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/pass/in-bound-variant-selected-element/metadata [new file with mode: 0644]
tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_0 [new file with mode: 0755]
tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_1 [new file with mode: 0755]
tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_2 [new file with mode: 0755]
tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_3 [new file with mode: 0755]
tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_4 [new file with mode: 0755]
tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_5 [new file with mode: 0755]
tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_6 [new file with mode: 0755]
tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_7 [new file with mode: 0755]
tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/metadata [new file with mode: 0755]
tests/1.8/regression/stream/pass/smalltrace/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/pass/smalltrace/metadata [new file with mode: 0644]
tests/1.8/regression/stream/pass/succeed1/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/pass/succeed1/metadata [new file with mode: 0644]
tests/1.8/regression/stream/pass/succeed2/dummystream [new file with mode: 0644]
tests/1.8/regression/stream/pass/succeed2/metadata [new file with mode: 0644]
tests/1.8/regression/stream/pass/test/channel0_0 [new file with mode: 0755]
tests/1.8/regression/stream/pass/test/channel0_1 [new file with mode: 0755]
tests/1.8/regression/stream/pass/test/channel0_2 [new file with mode: 0755]
tests/1.8/regression/stream/pass/test/channel0_3 [new file with mode: 0755]
tests/1.8/regression/stream/pass/test/channel0_4 [new file with mode: 0755]
tests/1.8/regression/stream/pass/test/channel0_5 [new file with mode: 0755]
tests/1.8/regression/stream/pass/test/channel0_6 [new file with mode: 0755]
tests/1.8/regression/stream/pass/test/channel0_7 [new file with mode: 0755]
tests/1.8/regression/stream/pass/test/metadata [new file with mode: 0755]
tests/1.8/regression/stream/pass/wk-heartbeat-u/metadata [new file with mode: 0755]
tests/1.8/regression/stream/pass/wk-heartbeat-u/u_0 [new file with mode: 0755]
tests/1.8/regression/stream/pass/wk-heartbeat-u/u_1 [new file with mode: 0755]
tests/1.8/regression/stream/pass/wk-heartbeat-u/u_2 [new file with mode: 0755]
tests/1.8/regression/stream/pass/wk-heartbeat-u/u_3 [new file with mode: 0755]
tests/1.8/regression/stream/pass/wk-heartbeat-u/u_4 [new file with mode: 0755]
tests/1.8/regression/stream/pass/wk-heartbeat-u/u_5 [new file with mode: 0755]
tests/1.8/regression/stream/pass/wk-heartbeat-u/u_6 [new file with mode: 0755]
tests/1.8/regression/stream/pass/wk-heartbeat-u/u_7 [new file with mode: 0755]
tests/1.8/regression/stream/run.sh [new file with mode: 0755]
tests/1.8/run.sh
tests/1.8/stress/run.sh [new file with mode: 0755]
tests/1.8/stress/stream/fail/out-of-bound-large-sequence-length/dummystream [new file with mode: 0644]
tests/1.8/stress/stream/fail/out-of-bound-large-sequence-length/metadata [new file with mode: 0644]
tests/1.9/run.sh

diff --git a/tests/1.8/fail/empty/metadata b/tests/1.8/fail/empty/metadata
deleted file mode 100644 (file)
index 7a459fa..0000000
+++ /dev/null
@@ -1 +0,0 @@
-/* CTF 1.8 */
diff --git a/tests/1.8/fail/fail1/dummystream b/tests/1.8/fail/fail1/dummystream
deleted file mode 100644 (file)
index 2601067..0000000
Binary files a/tests/1.8/fail/fail1/dummystream and /dev/null differ
diff --git a/tests/1.8/fail/fail1/metadata b/tests/1.8/fail/fail1/metadata
deleted file mode 100644 (file)
index 28185f5..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-/* CTF 1.8
- *
- * Architecture with 32-bit pointers, 32-bit integers, 32-bit longs.
- */
-
-typealias integer { size = 1; align = 1; signed = false; } := uint1_t;
-typealias integer { size = 8; align = 8; signed = false; } := uint8_t;
-typealias integer { size = 63; align = 1; signed = false; } := timestamp_t;
-
-typealias integer { size = 32; align = 32; signed = false; base = 10; } := uint32_t;
-typealias integer { size = 32; align = 32; signed = false; } := void *;
-
-
-trace {
-       major = 0;
-       minor = 1;
-       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-               uint8_t  uuid[16];
-               uint32_t stream_id;
-       };
-};
-
-stream {
-       event.header := struct {
-               uint1_t id;
-               timestamp_t timestamp;
-       };
-       event.context := struct {
-               uint32_t thread_id;
-               uint32_t event_count;
-       };                      
-};
-
-event {
-       name = func_enter;
-       id = 0;
-       fields := struct {
-               void *func_called;
-               void *called_from;
-       };
-};
-
-event {
-       name = func_exit;
-       id = 1;
-};
diff --git a/tests/1.8/fail/fail2/metadata b/tests/1.8/fail/fail2/metadata
deleted file mode 100644 (file)
index 456661e..0000000
Binary files a/tests/1.8/fail/fail2/metadata and /dev/null differ
diff --git a/tests/1.8/fail/integer-range/metadata b/tests/1.8/fail/integer-range/metadata
deleted file mode 100644 (file)
index 3574940..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-/* CTF 1.8 */
-typealias integer { size = 8; align = 8; signed = false; } := uint8_t;
-typealias integer { size = 32; align = 32; signed = false; } := uint32_t;
-
-trace {
-       /* Integer out of range */
-       major = 23452397856348975623897562893746589237465289374658923764598237645897234658723648579236;
-       minor = 1;
-       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-               uint8_t  uuid[16];
-       };
-};
-
-stream {
-       packet.context := struct {
-               uint32_t content_size;
-               uint32_t packet_size;
-       };
-};
-
-event {
-       name = string;
-       fields := struct { string str; };
-};
diff --git a/tests/1.8/fail/lttng-modules-2.0-pre1/metadata b/tests/1.8/fail/lttng-modules-2.0-pre1/metadata
deleted file mode 100755 (executable)
index 6f92a29..0000000
Binary files a/tests/1.8/fail/lttng-modules-2.0-pre1/metadata and /dev/null differ
diff --git a/tests/1.8/fail/packet-based-metadata/metadata b/tests/1.8/fail/packet-based-metadata/metadata
deleted file mode 100644 (file)
index e209780..0000000
Binary files a/tests/1.8/fail/packet-based-metadata/metadata and /dev/null differ
diff --git a/tests/1.8/fail/run.sh b/tests/1.8/fail/run.sh
deleted file mode 100755 (executable)
index 1c0bdd2..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-
-. ../../../utils/run.sh
diff --git a/tests/1.8/fail/smalltrace/dummystream-fail b/tests/1.8/fail/smalltrace/dummystream-fail
deleted file mode 100644 (file)
index fc7e07c..0000000
+++ /dev/null
@@ -1 +0,0 @@
\1füÁ*d
\ No newline at end of file
diff --git a/tests/1.8/fail/smalltrace/metadata b/tests/1.8/fail/smalltrace/metadata
deleted file mode 100644 (file)
index 86f8e0a..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-/* CTF 1.8 */
-typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
-typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
-
-trace {
-       major = 0;
-       minor = 1;
-       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-               uint8_t  uuid[16];
-       };
-};
-
-event {
-       name = string;
-       fields := struct { string str; };
-};
diff --git a/tests/1.8/fail/string-concat/metadata b/tests/1.8/fail/string-concat/metadata
deleted file mode 100644 (file)
index d4440b8..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-/* CTF 1.8 */
-
-trace {
-       test = "abc" "def";
-};
diff --git a/tests/1.8/fail/test.sh b/tests/1.8/fail/test.sh
deleted file mode 100755 (executable)
index 8d9d62e..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-#!/bin/bash
-#
-# Copyright (C) - 2013 Christian Babeux <christian.babeux@efficios.com>
-#
-# This program is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License, version 2 only, as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful, but WITHOUT
-# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
-# more details.
-#
-# You should have received a copy of the GNU General Public License along with
-# this program; if not, write to the Free Software Foundation, Inc., 51
-# Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-CURDIR=$(dirname $0)
-UTILS_DIR=$CURDIR/../../../utils/
-
-source $UTILS_DIR/tap/tap.sh
-
-NUM_TESTS=1
-
-plan_tests $NUM_TESTS
-
-$CTF_READER_BIN $CTF_READER_OPTS $1 >/dev/null 2>&1
-
-result=$?
-
-is $result 1 $1
diff --git a/tests/1.8/fail/types01/metadata b/tests/1.8/fail/types01/metadata
deleted file mode 100644 (file)
index f734c50..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-
-/* FAIL: size = 0 */
-typealias integer { size = 0; align = 8; signed = false; } := uint0_t;    
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
diff --git a/tests/1.8/fail/types02/metadata b/tests/1.8/fail/types02/metadata
deleted file mode 100644 (file)
index 64caaec..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-
-/* FAIL: Alignment values must be power of two. */
-typealias integer { size = 8; align = 17; signed = false; } := uint0_t;
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
diff --git a/tests/1.8/fail/types03/metadata b/tests/1.8/fail/types03/metadata
deleted file mode 100644 (file)
index 66fdd53..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-
-/* FAIL: invalid byte ordering. */
-typealias integer { size = 8; align = 8; signed = false; byte_order = iroquois; } := uint8_t;
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
diff --git a/tests/1.8/fail/types04/metadata b/tests/1.8/fail/types04/metadata
deleted file mode 100644 (file)
index c3939db..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-
-/* FAIL: invalid signed. */
-typealias integer { size = 8; align = 8; signed = svp; } := uint8_t;
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
diff --git a/tests/1.8/fail/types05/metadata b/tests/1.8/fail/types05/metadata
deleted file mode 100644 (file)
index 6d87f56..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-
-/* FAIL: negative size. */
-typealias integer { size = -8; align = 8; signed = false; } := uint8_t;
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
diff --git a/tests/1.8/fail/types06/metadata b/tests/1.8/fail/types06/metadata
deleted file mode 100644 (file)
index 2d60c33..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-
-/* FAIL: negative align. */
-typealias integer { size = 8; align = -8; signed = false; } := uint8_t;
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
diff --git a/tests/1.8/fail/types07/metadata b/tests/1.8/fail/types07/metadata
deleted file mode 100644 (file)
index 4b97a9c..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-
-/* FAIL: size as string. */
-typealias integer { size = "8"; align = 8; signed = false; } := uint8_t;
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
diff --git a/tests/1.8/fail/types08/metadata b/tests/1.8/fail/types08/metadata
deleted file mode 100644 (file)
index c2fd4af..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-
-/* FAIL: align as string. */
-typealias integer { size = 8; align = "8"; signed = false; } := uint8_t;
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
diff --git a/tests/1.8/fail/types09/metadata b/tests/1.8/fail/types09/metadata
deleted file mode 100644 (file)
index 7f5f142..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-
-/* FAIL: signed as string. */
-typealias integer { size = 8; align = 8; signed = "false"; } := uint8_t;
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
diff --git a/tests/1.8/fail/types10/metadata b/tests/1.8/fail/types10/metadata
deleted file mode 100644 (file)
index 86b6496..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-
-/* FAIL: name is a keyword. */
-typealias integer { size = 8; align = 8; signed = "false"; } := trace;
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
diff --git a/tests/1.8/fail/types11/metadata b/tests/1.8/fail/types11/metadata
deleted file mode 100644 (file)
index 6ac5b82..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-
-/* FAIL: missing size. */
-typealias integer { align = 8; signed = "false"; } := uint8_t;
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
diff --git a/tests/1.8/fail/types12/metadata b/tests/1.8/fail/types12/metadata
deleted file mode 100644 (file)
index 8057394..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-/* FAIL: invalid kind. */
-typealias entier { size = 8; align = 8; signed = false; } := uint8_t;
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
diff --git a/tests/1.8/fail/types13/metadata b/tests/1.8/fail/types13/metadata
deleted file mode 100644 (file)
index d379426..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-/* FAIL: base as a string. */
-typealias integer { size = 8; align = 8; signed = false; base = "decimal"; } := uint8_t;
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
diff --git a/tests/1.8/fail/types14/metadata b/tests/1.8/fail/types14/metadata
deleted file mode 100644 (file)
index 051c230..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-/* FAIL: invalid base. */
-typealias integer { size = 8; align = 8; signed = false; base = orthogonal; } := uint8_t;
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
diff --git a/tests/1.8/fail/types15/metadata b/tests/1.8/fail/types15/metadata
deleted file mode 100644 (file)
index 6343188..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-/* FAIL: invalid encoding. */
-typealias integer { size = 8; align = 8; signed = false; encoding = true; } := uint8_t;
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
diff --git a/tests/1.8/fail/types16/metadata b/tests/1.8/fail/types16/metadata
deleted file mode 100644 (file)
index 4eeb883..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-/* FAIL: encoding as a string. */
-typealias integer { size = 8; align = 8; signed = false; encoding = "ascii"; } := uint8_t;
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
diff --git a/tests/1.8/fail/types17/metadata b/tests/1.8/fail/types17/metadata
deleted file mode 100644 (file)
index abeee11..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-typealias integer { size = 8; align = 8; signed = false; } := uint8_t;
-
-/* FAIL: out of range */
-enum dummy : uint8_t {
-  x = 1024
-};
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
-
-
diff --git a/tests/1.8/fail/types18/metadata b/tests/1.8/fail/types18/metadata
deleted file mode 100644 (file)
index 3477e20..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-
-/* FAIL: out of range */
-enum dummy : uint32_t {
-  x = -1
-};
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
-
-
diff --git a/tests/1.8/fail/types19/metadata b/tests/1.8/fail/types19/metadata
deleted file mode 100644 (file)
index 6d88bad..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-
-/* FAIL: implicite type int, but undefined. */
-enum dummy {
-  x = 1024
-};
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
-
-
diff --git a/tests/1.8/fail/types20/metadata b/tests/1.8/fail/types20/metadata
deleted file mode 100644 (file)
index 7f7405c..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-
-/* FAIL: type int, but undefined. */
-struct dummy {
-  int xxx;
-};
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
-
-
diff --git a/tests/1.8/fail/types21/metadata b/tests/1.8/fail/types21/metadata
deleted file mode 100644 (file)
index 9933b4e..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-
-/* FAIL: duplicate name */
-struct dummy {
-  uint32_t xxx;
-  uint32_t xxx;
-};
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
-
-
diff --git a/tests/1.8/fail/types22/metadata b/tests/1.8/fail/types22/metadata
deleted file mode 100644 (file)
index eb05c32..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-
-/* FAIL: duplicate name. */
-struct a {
-  uint32_t xxx;
-};
-
-struct a {
-  uint32_t xxx;
-};
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
-
-
diff --git a/tests/1.8/fail/types23/metadata b/tests/1.8/fail/types23/metadata
deleted file mode 100644 (file)
index 326f730..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-
-/* FAIL: duplicate name. */
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
-
-
diff --git a/tests/1.8/fail/types24/metadata b/tests/1.8/fail/types24/metadata
deleted file mode 100644 (file)
index 666933a..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-
-/* FAIL: keyword as a field. */
-struct a {
-  uint32_t trace;
-};
-
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
-
-
diff --git a/tests/1.8/fail/types25/metadata b/tests/1.8/fail/types25/metadata
deleted file mode 100644 (file)
index 5ca0fb5..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-
-/* FAIL: keyword as a field. */
-struct a {
-  uint32_t x;
-} align(-1);
-
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
-
-
diff --git a/tests/1.8/fail/types26/metadata b/tests/1.8/fail/types26/metadata
deleted file mode 100644 (file)
index 3d1b760..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-/* CTF 1.8 */
-
-typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
-
-/* FAIL: negative array. */
-typedef uint32_t name[-1];
-
-trace {
-       major = 2;
-       minor = 1;
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-       };
-};
-
-
diff --git a/tests/1.8/fuzzing/run.sh b/tests/1.8/fuzzing/run.sh
new file mode 100755 (executable)
index 0000000..78e3be0
--- /dev/null
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+for dir in */; do
+       echo "Running ${dir} tests"
+       cd ${dir}
+       ./run.sh
+       cd ..
+done
diff --git a/tests/1.8/pass/empty-stream-no-header/emptystream b/tests/1.8/pass/empty-stream-no-header/emptystream
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/tests/1.8/pass/empty-stream-no-header/metadata b/tests/1.8/pass/empty-stream-no-header/metadata
deleted file mode 100644 (file)
index d4a73a3..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-/* CTF 1.8 */
-typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
-typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
-
-trace {
-       major = 0;
-       minor = 1;
-       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
-       byte_order = le;
-};
-
-event {
-       name = string;
-       fields := struct { string str; };
-};
diff --git a/tests/1.8/pass/empty-stream/emptystream b/tests/1.8/pass/empty-stream/emptystream
deleted file mode 100644 (file)
index 8cc80f6..0000000
+++ /dev/null
@@ -1 +0,0 @@
\1füÁ*d"Ðlî\11à\8c\bË\a׳¥d
\ No newline at end of file
diff --git a/tests/1.8/pass/empty-stream/metadata b/tests/1.8/pass/empty-stream/metadata
deleted file mode 100644 (file)
index 86f8e0a..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-/* CTF 1.8 */
-typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
-typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
-
-trace {
-       major = 0;
-       minor = 1;
-       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-               uint8_t  uuid[16];
-       };
-};
-
-event {
-       name = string;
-       fields := struct { string str; };
-};
diff --git a/tests/1.8/pass/env-warning/dummystream b/tests/1.8/pass/env-warning/dummystream
deleted file mode 100644 (file)
index 53d735e..0000000
Binary files a/tests/1.8/pass/env-warning/dummystream and /dev/null differ
diff --git a/tests/1.8/pass/env-warning/metadata b/tests/1.8/pass/env-warning/metadata
deleted file mode 100644 (file)
index f3618e2..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-/* CTF 1.8 */
-typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
-typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
-
-trace {
-       major = 0;
-       minor = 1;
-       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-               uint8_t  uuid[16];
-       };
-};
-
-env {
-       dummy = "blah";
-};
-
-stream {
-       packet.context := struct {
-               uint32_t content_size;
-               uint32_t packet_size;
-       };
-};
-
-event {
-       name = string;
-       fields := struct { string str; };
-};
diff --git a/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_0 b/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_0
deleted file mode 100755 (executable)
index 528aa6c..0000000
Binary files a/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_0 and /dev/null differ
diff --git a/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_1 b/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_1
deleted file mode 100755 (executable)
index 41ac45a..0000000
Binary files a/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_1 and /dev/null differ
diff --git a/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_2 b/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_2
deleted file mode 100755 (executable)
index b6fc7f7..0000000
Binary files a/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_2 and /dev/null differ
diff --git a/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_3 b/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_3
deleted file mode 100755 (executable)
index b79f6cb..0000000
Binary files a/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_3 and /dev/null differ
diff --git a/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_4 b/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_4
deleted file mode 100755 (executable)
index 3ff7ea5..0000000
Binary files a/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_4 and /dev/null differ
diff --git a/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_5 b/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_5
deleted file mode 100755 (executable)
index ed41169..0000000
Binary files a/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_5 and /dev/null differ
diff --git a/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_6 b/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_6
deleted file mode 100755 (executable)
index 89502f0..0000000
Binary files a/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_6 and /dev/null differ
diff --git a/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_7 b/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_7
deleted file mode 100755 (executable)
index 1199fac..0000000
Binary files a/tests/1.8/pass/lttng-modules-2.0-pre5/channel0_7 and /dev/null differ
diff --git a/tests/1.8/pass/lttng-modules-2.0-pre5/metadata b/tests/1.8/pass/lttng-modules-2.0-pre5/metadata
deleted file mode 100755 (executable)
index de5959a..0000000
Binary files a/tests/1.8/pass/lttng-modules-2.0-pre5/metadata and /dev/null differ
diff --git a/tests/1.8/pass/minimal/metadata b/tests/1.8/pass/minimal/metadata
deleted file mode 100644 (file)
index 4b5ebad..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-/* CTF 1.8 */
-
-trace {
-       major = 1;
-       minor = 8;
-       byte_order = le;
-};
diff --git a/tests/1.8/pass/run.sh b/tests/1.8/pass/run.sh
deleted file mode 100755 (executable)
index 1c0bdd2..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-
-. ../../../utils/run.sh
diff --git a/tests/1.8/pass/smalltrace/dummystream b/tests/1.8/pass/smalltrace/dummystream
deleted file mode 100644 (file)
index 469cb9a..0000000
Binary files a/tests/1.8/pass/smalltrace/dummystream and /dev/null differ
diff --git a/tests/1.8/pass/smalltrace/metadata b/tests/1.8/pass/smalltrace/metadata
deleted file mode 100644 (file)
index 86f8e0a..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-/* CTF 1.8 */
-typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
-typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
-
-trace {
-       major = 0;
-       minor = 1;
-       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-               uint8_t  uuid[16];
-       };
-};
-
-event {
-       name = string;
-       fields := struct { string str; };
-};
diff --git a/tests/1.8/pass/string-literal-escape/dummystream b/tests/1.8/pass/string-literal-escape/dummystream
deleted file mode 100644 (file)
index 53d735e..0000000
Binary files a/tests/1.8/pass/string-literal-escape/dummystream and /dev/null differ
diff --git a/tests/1.8/pass/string-literal-escape/metadata b/tests/1.8/pass/string-literal-escape/metadata
deleted file mode 100644 (file)
index 71d6c18..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-/* CTF 1.8 */
-typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
-typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
-
-trace {
-       major = 0;
-       minor = 1;
-       test2 = "?\x20\040\123\0?";
-       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-               uint8_t  uuid[16];
-       };
-};
-
-/* use babeltrace -f trace:hostname to print. */
-
-/*
- * Expected:
-
-abc " hex: A, #, #, #1,
-oct: A, #, #, #1,
-
- */
-
-env {
-       hostname = "\nabc \" hex: \x41, \x23, \x023, \x0231,\noct: \101, \043, \43, \0431, \0NOT SEEN";
-};
-
-stream {
-       packet.context := struct {
-               uint32_t content_size;
-               uint32_t packet_size;
-       };
-};
-
-event {
-       name = string;
-       fields := struct { string str; };
-};
diff --git a/tests/1.8/pass/succeed1/dummystream b/tests/1.8/pass/succeed1/dummystream
deleted file mode 100644 (file)
index 53d735e..0000000
Binary files a/tests/1.8/pass/succeed1/dummystream and /dev/null differ
diff --git a/tests/1.8/pass/succeed1/metadata b/tests/1.8/pass/succeed1/metadata
deleted file mode 100644 (file)
index f88ffb0..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* CTF 1.8 */
-typealias integer { size = 8; align = 8; signed = false; } := uint8_t;
-typealias integer { size = 32; align = 32; signed = false; } := uint32_t;
-
-trace {
-       major = 0;
-       minor = 1;
-       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-               uint8_t  uuid[16];
-       };
-};
-
-stream {
-       packet.context := struct {
-               uint32_t content_size;
-               uint32_t packet_size;
-       };
-};
-
-event {
-       name = string;
-       fields := struct { string str; };
-};
diff --git a/tests/1.8/pass/succeed2/dummystream b/tests/1.8/pass/succeed2/dummystream
deleted file mode 100644 (file)
index 53d735e..0000000
Binary files a/tests/1.8/pass/succeed2/dummystream and /dev/null differ
diff --git a/tests/1.8/pass/succeed2/metadata b/tests/1.8/pass/succeed2/metadata
deleted file mode 100644 (file)
index 10a288f..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* CTF 1.8 */
-typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
-typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
-
-trace {
-       major = 0;
-       minor = 1;
-       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-               uint8_t  uuid[16];
-       };
-};
-
-stream {
-       packet.context := struct {
-               uint32_t content_size;
-               uint32_t packet_size;
-       };
-};
-
-event {
-       name = string;
-       fields := struct { string str; };
-};
diff --git a/tests/1.8/pass/succeed4/metadata b/tests/1.8/pass/succeed4/metadata
deleted file mode 100644 (file)
index a3d401a..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-/* CTF 1.8 */
-typealias integer { size = 8; align = 8; signed = false; } := uint8_t;
-typealias integer { size = 32; align = 32; signed = false; } := uint32_t;
-
-trace {
-       major = 0;
-       minor = 1;
-       test = 0xABC234;        /* hexadecimal */
-       test1 = 06534;          /* octal */
-       test2 = 1234;           /* decimal */
-       test3 = +1234;          /* decimal with + unary op */
-       test4 = -1234;          /* decimal (negated) */
-       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-               uint8_t  uuid[16];
-       };
-};
-
-stream {
-       packet.context := struct {
-               uint32_t content_size;
-               uint32_t packet_size;
-       };
-};
-
-event {
-       name = string;
-       fields := struct { string str; };
-};
diff --git a/tests/1.8/pass/test.sh b/tests/1.8/pass/test.sh
deleted file mode 100755 (executable)
index e4506a3..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-#!/bin/bash
-#
-# Copyright (C) - 2013 Christian Babeux <christian.babeux@efficios.com>
-#
-# This program is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License, version 2 only, as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful, but WITHOUT
-# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
-# more details.
-#
-# You should have received a copy of the GNU General Public License along with
-# this program; if not, write to the Free Software Foundation, Inc., 51
-# Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-CURDIR=$(dirname $0)
-UTILS_DIR=$CURDIR/../../../utils/
-
-source $UTILS_DIR/tap/tap.sh
-
-NUM_TESTS=1
-
-plan_tests $NUM_TESTS
-
-$CTF_READER_BIN $CTF_READER_OPTS $1 >/dev/null 2>&1
-
-result=$?
-
-is $result 0 $1
diff --git a/tests/1.8/pass/test/channel0_0 b/tests/1.8/pass/test/channel0_0
deleted file mode 100755 (executable)
index 528aa6c..0000000
Binary files a/tests/1.8/pass/test/channel0_0 and /dev/null differ
diff --git a/tests/1.8/pass/test/channel0_1 b/tests/1.8/pass/test/channel0_1
deleted file mode 100755 (executable)
index 41ac45a..0000000
Binary files a/tests/1.8/pass/test/channel0_1 and /dev/null differ
diff --git a/tests/1.8/pass/test/channel0_2 b/tests/1.8/pass/test/channel0_2
deleted file mode 100755 (executable)
index b6fc7f7..0000000
Binary files a/tests/1.8/pass/test/channel0_2 and /dev/null differ
diff --git a/tests/1.8/pass/test/channel0_3 b/tests/1.8/pass/test/channel0_3
deleted file mode 100755 (executable)
index b79f6cb..0000000
Binary files a/tests/1.8/pass/test/channel0_3 and /dev/null differ
diff --git a/tests/1.8/pass/test/channel0_4 b/tests/1.8/pass/test/channel0_4
deleted file mode 100755 (executable)
index 3ff7ea5..0000000
Binary files a/tests/1.8/pass/test/channel0_4 and /dev/null differ
diff --git a/tests/1.8/pass/test/channel0_5 b/tests/1.8/pass/test/channel0_5
deleted file mode 100755 (executable)
index ed41169..0000000
Binary files a/tests/1.8/pass/test/channel0_5 and /dev/null differ
diff --git a/tests/1.8/pass/test/channel0_6 b/tests/1.8/pass/test/channel0_6
deleted file mode 100755 (executable)
index 89502f0..0000000
Binary files a/tests/1.8/pass/test/channel0_6 and /dev/null differ
diff --git a/tests/1.8/pass/test/channel0_7 b/tests/1.8/pass/test/channel0_7
deleted file mode 100755 (executable)
index 1199fac..0000000
Binary files a/tests/1.8/pass/test/channel0_7 and /dev/null differ
diff --git a/tests/1.8/pass/test/metadata b/tests/1.8/pass/test/metadata
deleted file mode 100755 (executable)
index de5959a..0000000
Binary files a/tests/1.8/pass/test/metadata and /dev/null differ
diff --git a/tests/1.8/pass/warnings/dummystream b/tests/1.8/pass/warnings/dummystream
deleted file mode 100644 (file)
index 53d735e..0000000
Binary files a/tests/1.8/pass/warnings/dummystream and /dev/null differ
diff --git a/tests/1.8/pass/warnings/metadata b/tests/1.8/pass/warnings/metadata
deleted file mode 100644 (file)
index 30ca784..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-/* CTF 1.8 */
-typealias integer { size = 8; align = 8; signed = false; aa = bb; } := uint8_t;
-typealias integer { size = 32; align = 32; signed = false; zz = aa; } := uint32_t;
-
-trace {
-       major = 0;
-       minor = 1;
-       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
-       byte_order = le;
-       packet.header := struct {
-               uint32_t magic;
-               uint8_t  uuid[16];
-       };
-       blah = "aaa";
-};
-
-stream {
-       packet.context := struct {
-               uint32_t content_size;
-               uint32_t packet_size;
-       };
-       askdjfhaskdjfh = 1;
-};
-
-event {
-       name = string;
-       fields := struct { string str; };
-       asdjfhah := struct { uint8_t ffff; };
-};
diff --git a/tests/1.8/pass/wk-heartbeat-u/metadata b/tests/1.8/pass/wk-heartbeat-u/metadata
deleted file mode 100755 (executable)
index e35f463..0000000
Binary files a/tests/1.8/pass/wk-heartbeat-u/metadata and /dev/null differ
diff --git a/tests/1.8/pass/wk-heartbeat-u/u_0 b/tests/1.8/pass/wk-heartbeat-u/u_0
deleted file mode 100755 (executable)
index 3af2cdc..0000000
Binary files a/tests/1.8/pass/wk-heartbeat-u/u_0 and /dev/null differ
diff --git a/tests/1.8/pass/wk-heartbeat-u/u_1 b/tests/1.8/pass/wk-heartbeat-u/u_1
deleted file mode 100755 (executable)
index 7b74c03..0000000
Binary files a/tests/1.8/pass/wk-heartbeat-u/u_1 and /dev/null differ
diff --git a/tests/1.8/pass/wk-heartbeat-u/u_2 b/tests/1.8/pass/wk-heartbeat-u/u_2
deleted file mode 100755 (executable)
index 13a69fc..0000000
Binary files a/tests/1.8/pass/wk-heartbeat-u/u_2 and /dev/null differ
diff --git a/tests/1.8/pass/wk-heartbeat-u/u_3 b/tests/1.8/pass/wk-heartbeat-u/u_3
deleted file mode 100755 (executable)
index 1cdde72..0000000
Binary files a/tests/1.8/pass/wk-heartbeat-u/u_3 and /dev/null differ
diff --git a/tests/1.8/pass/wk-heartbeat-u/u_4 b/tests/1.8/pass/wk-heartbeat-u/u_4
deleted file mode 100755 (executable)
index c136034..0000000
Binary files a/tests/1.8/pass/wk-heartbeat-u/u_4 and /dev/null differ
diff --git a/tests/1.8/pass/wk-heartbeat-u/u_5 b/tests/1.8/pass/wk-heartbeat-u/u_5
deleted file mode 100755 (executable)
index a0a5881..0000000
Binary files a/tests/1.8/pass/wk-heartbeat-u/u_5 and /dev/null differ
diff --git a/tests/1.8/pass/wk-heartbeat-u/u_6 b/tests/1.8/pass/wk-heartbeat-u/u_6
deleted file mode 100755 (executable)
index b1c8520..0000000
Binary files a/tests/1.8/pass/wk-heartbeat-u/u_6 and /dev/null differ
diff --git a/tests/1.8/pass/wk-heartbeat-u/u_7 b/tests/1.8/pass/wk-heartbeat-u/u_7
deleted file mode 100755 (executable)
index 05f7393..0000000
Binary files a/tests/1.8/pass/wk-heartbeat-u/u_7 and /dev/null differ
diff --git a/tests/1.8/regression/metadata/fail/array-redefinition/metadata b/tests/1.8/regression/metadata/fail/array-redefinition/metadata
new file mode 100644 (file)
index 0000000..2d9a6e4
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+typealias integer { size = 64; align = 8; signed = false; } := uint64_t;
+
+typedef uint32_t array_type[10];
+
+/* FAIL: type 'array_type' is already defined */
+typedef uint64_t array_type[10];
+
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/array-size-identifier/metadata b/tests/1.8/regression/metadata/fail/array-size-identifier/metadata
new file mode 100644 (file)
index 0000000..248794e
--- /dev/null
@@ -0,0 +1,17 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+typedef uint32_t A[x];
diff --git a/tests/1.8/regression/metadata/fail/array-size-keyword/metadata b/tests/1.8/regression/metadata/fail/array-size-keyword/metadata
new file mode 100644 (file)
index 0000000..3abe63f
--- /dev/null
@@ -0,0 +1,17 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+typedef uint32_t A[typedef];
diff --git a/tests/1.8/regression/metadata/fail/array-size-negative/metadata b/tests/1.8/regression/metadata/fail/array-size-negative/metadata
new file mode 100644 (file)
index 0000000..dcb936b
--- /dev/null
@@ -0,0 +1,17 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+typedef uint32_t A[-1];
diff --git a/tests/1.8/regression/metadata/fail/array-size-not-present/metadata b/tests/1.8/regression/metadata/fail/array-size-not-present/metadata
new file mode 100644 (file)
index 0000000..b0a2541
--- /dev/null
@@ -0,0 +1,17 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+typedef uint32_t A[];
diff --git a/tests/1.8/regression/metadata/fail/array-size-string/metadata b/tests/1.8/regression/metadata/fail/array-size-string/metadata
new file mode 100644 (file)
index 0000000..d75305d
--- /dev/null
@@ -0,0 +1,17 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+typedef uint32_t A["x"];
diff --git a/tests/1.8/regression/metadata/fail/array-size-type-field/metadata b/tests/1.8/regression/metadata/fail/array-size-type-field/metadata
new file mode 100644 (file)
index 0000000..a445ee4
--- /dev/null
@@ -0,0 +1,25 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+/* Enum can be nameless */
+event {
+       name = string;
+       fields := struct {
+                       uint32_t A[uint32_t];
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/array-size-type/metadata b/tests/1.8/regression/metadata/fail/array-size-type/metadata
new file mode 100644 (file)
index 0000000..ee8e5f7
--- /dev/null
@@ -0,0 +1,17 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+typedef uint32_t A[uint32_t];
diff --git a/tests/1.8/regression/metadata/fail/empty/metadata b/tests/1.8/regression/metadata/fail/empty/metadata
new file mode 100644 (file)
index 0000000..7a459fa
--- /dev/null
@@ -0,0 +1 @@
+/* CTF 1.8 */
diff --git a/tests/1.8/regression/metadata/fail/enum-untyped-missing-int/metadata b/tests/1.8/regression/metadata/fail/enum-untyped-missing-int/metadata
new file mode 100644 (file)
index 0000000..5e71ab9
--- /dev/null
@@ -0,0 +1,28 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+// This is not defined, thus type 'int' doesn't exists.
+// typealias integer { size = 32; align = 32; signed = false; base = hex; } := int;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = string;
+       fields := struct {
+         /* An untyped enum is typed with "int". */
+          enum {
+                 VAL1
+          } field;
+       };
+};
+
diff --git a/tests/1.8/regression/metadata/fail/enum-untyped-string/metadata b/tests/1.8/regression/metadata/fail/enum-untyped-string/metadata
new file mode 100644 (file)
index 0000000..6760c4d
--- /dev/null
@@ -0,0 +1,28 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+/* This is ugly: 'int' is defined as a 'string'. */
+typealias string { encoding = ascii; } := int;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = string;
+       fields := struct {
+         /*  An untyped enum is typed with "int" (a string). */
+          enum {
+                 VAL1
+          } field;
+       };
+};
+
diff --git a/tests/1.8/regression/metadata/fail/enum-values-floating/metadata b/tests/1.8/regression/metadata/fail/enum-values-floating/metadata
new file mode 100644 (file)
index 0000000..aff1f40
--- /dev/null
@@ -0,0 +1,23 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+typealias floating_point { exp_dig = 8; mant_dig = 24; } := FLOAT;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+/* Enum can be nameless */
+event {
+       name = string;
+       fields := struct {
+               enum Z: FLOAT { X } Y; 
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/enum-values-token/metadata b/tests/1.8/regression/metadata/fail/enum-values-token/metadata
new file mode 100644 (file)
index 0000000..c236fa8
--- /dev/null
@@ -0,0 +1,26 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+/* Enum can be nameless */
+event {
+       name = string;
+       fields := struct {
+          enum : uint8_t {
+                 VAL1, 
+                 VAL2 = VAL1,
+                 VAL3 = VAL2
+          } field;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/enum-values-too-big/metadata b/tests/1.8/regression/metadata/fail/enum-values-too-big/metadata
new file mode 100644 (file)
index 0000000..7ba4a54
--- /dev/null
@@ -0,0 +1,27 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := TYPE;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+/* Value 1024 is above the max value of TYPE. */
+event {
+       name = string;
+       fields := struct {
+          enum : TYPE {
+                 VAL1, 
+                 VAL2, 
+                 VAL3  = 1024
+          } field;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/enum-values-too-small/metadata b/tests/1.8/regression/metadata/fail/enum-values-too-small/metadata
new file mode 100644 (file)
index 0000000..dc82eda
--- /dev/null
@@ -0,0 +1,27 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+typealias integer { size = 32; align = 32; signed = true; base = hex; } := TYPE;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+/* Value -1024 is below the min value of TYPE. */
+event {
+       name = string;
+       fields := struct {
+          enum : TYPE {
+                 VAL1, 
+                 VAL2, 
+                 VAL3  = -1024
+          } field;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/fail2/metadata b/tests/1.8/regression/metadata/fail/fail2/metadata
new file mode 100644 (file)
index 0000000..456661e
Binary files /dev/null and b/tests/1.8/regression/metadata/fail/fail2/metadata differ
diff --git a/tests/1.8/regression/metadata/fail/integer-range/metadata b/tests/1.8/regression/metadata/fail/integer-range/metadata
new file mode 100644 (file)
index 0000000..3574940
--- /dev/null
@@ -0,0 +1,27 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; } := uint32_t;
+
+trace {
+       /* Integer out of range */
+       major = 23452397856348975623897562893746589237465289374658923764598237645897234658723648579236;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+stream {
+       packet.context := struct {
+               uint32_t content_size;
+               uint32_t packet_size;
+       };
+};
+
+event {
+       name = string;
+       fields := struct { string str; };
+};
diff --git a/tests/1.8/regression/metadata/fail/lexer-literal-guid-corrupted/metadata b/tests/1.8/regression/metadata/fail/lexer-literal-guid-corrupted/metadata
new file mode 100644 (file)
index 0000000..0072385
--- /dev/null
@@ -0,0 +1,16 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := int;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "\0a6422d0-6cee-11e0-8c08-cb07d7b3a564";  // yes, it's a NUL char in front!
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/lexer-literal-guid-too-big/metadata b/tests/1.8/regression/metadata/fail/lexer-literal-guid-too-big/metadata
new file mode 100644 (file)
index 0000000..8444ea1
--- /dev/null
@@ -0,0 +1,16 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := int;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a5642a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/lexer-literal-guid-too-small/metadata b/tests/1.8/regression/metadata/fail/lexer-literal-guid-too-small/metadata
new file mode 100644 (file)
index 0000000..31e146f
--- /dev/null
@@ -0,0 +1,16 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := int;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/lexer-literal-int-incomplete/metadata b/tests/1.8/regression/metadata/fail/lexer-literal-int-incomplete/metadata
new file mode 100644 (file)
index 0000000..fee8243
--- /dev/null
@@ -0,0 +1,16 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := int;
+
+trace {
+       major = 0x;  /// This is strange [must fail].
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/lexer-unterminated-bracket/metadata b/tests/1.8/regression/metadata/fail/lexer-unterminated-bracket/metadata
new file mode 100644 (file)
index 0000000..237c090
--- /dev/null
@@ -0,0 +1,7 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := int;
+
+trace {
diff --git a/tests/1.8/regression/metadata/fail/lexer-unterminated-declaration/metadata b/tests/1.8/regression/metadata/fail/lexer-unterminated-declaration/metadata
new file mode 100644 (file)
index 0000000..449f9a6
--- /dev/null
@@ -0,0 +1,2 @@
+/* CTF 1.8 */
+typealias
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/fail/lexer-unterminated-expression/metadata b/tests/1.8/regression/metadata/fail/lexer-unterminated-expression/metadata
new file mode 100644 (file)
index 0000000..cd4f562
--- /dev/null
@@ -0,0 +1,2 @@
+/* CTF 1.8 */
+typealias integer { size = 
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/fail/lexer-unterminated-string/metadata b/tests/1.8/regression/metadata/fail/lexer-unterminated-string/metadata
new file mode 100644 (file)
index 0000000..4d0c9ec
--- /dev/null
@@ -0,0 +1,10 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := int;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564;
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/fail/lexer-version-broken/metadata b/tests/1.8/regression/metadata/fail/lexer-version-broken/metadata
new file mode 100644 (file)
index 0000000..ad365ac
--- /dev/null
@@ -0,0 +1,5 @@
+/* CTF 100000000000000000000000000000000000.8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := int;
diff --git a/tests/1.8/regression/metadata/fail/lexer-version-too-big/metadata b/tests/1.8/regression/metadata/fail/lexer-version-too-big/metadata
new file mode 100644 (file)
index 0000000..54167a7
--- /dev/null
@@ -0,0 +1,5 @@
+/* CTF 1 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := int;
diff --git a/tests/1.8/regression/metadata/fail/lttng-modules-2.0-pre1/metadata b/tests/1.8/regression/metadata/fail/lttng-modules-2.0-pre1/metadata
new file mode 100755 (executable)
index 0000000..6f92a29
Binary files /dev/null and b/tests/1.8/regression/metadata/fail/lttng-modules-2.0-pre1/metadata differ
diff --git a/tests/1.8/regression/metadata/fail/packet-based-metadata/metadata b/tests/1.8/regression/metadata/fail/packet-based-metadata/metadata
new file mode 100644 (file)
index 0000000..e209780
Binary files /dev/null and b/tests/1.8/regression/metadata/fail/packet-based-metadata/metadata differ
diff --git a/tests/1.8/regression/metadata/fail/run.sh b/tests/1.8/regression/metadata/fail/run.sh
new file mode 100755 (executable)
index 0000000..f23416c
--- /dev/null
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+. ../../../../../utils/run.sh
diff --git a/tests/1.8/regression/metadata/fail/string-concat/metadata b/tests/1.8/regression/metadata/fail/string-concat/metadata
new file mode 100644 (file)
index 0000000..d4440b8
--- /dev/null
@@ -0,0 +1,5 @@
+/* CTF 1.8 */
+
+trace {
+       test = "abc" "def";
+};
diff --git a/tests/1.8/regression/metadata/fail/struct-align-enum/metadata b/tests/1.8/regression/metadata/fail/struct-align-enum/metadata
new file mode 100644 (file)
index 0000000..0fd645c
--- /dev/null
@@ -0,0 +1,22 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+enum : uint32_t {
+  X = 8
+};
+
+struct Dummy1 {
+ uint8_t x;
+} align(X);
diff --git a/tests/1.8/regression/metadata/fail/struct-align-huge/metadata b/tests/1.8/regression/metadata/fail/struct-align-huge/metadata
new file mode 100644 (file)
index 0000000..bd603b1
--- /dev/null
@@ -0,0 +1,23 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+struct Dummy1 {
+ uint8_t x;
+} align(0xFFFFFFFFU);
+
+struct Dummy2 {
+ uint8_t x;
+} align(0xFFFFFFFFFFFFFFFFULL);
+
diff --git a/tests/1.8/regression/metadata/fail/struct-align-negative/metadata b/tests/1.8/regression/metadata/fail/struct-align-negative/metadata
new file mode 100644 (file)
index 0000000..ec7b5f5
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+struct Dummy1 {
+ uint8_t x;
+} align(-8);
+
diff --git a/tests/1.8/regression/metadata/fail/struct-align-string/metadata b/tests/1.8/regression/metadata/fail/struct-align-string/metadata
new file mode 100644 (file)
index 0000000..4d6d074
--- /dev/null
@@ -0,0 +1,18 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+struct Dummy1 {
+ uint8_t x;
+} align("duh");
diff --git a/tests/1.8/regression/metadata/fail/struct-align-zero/metadata b/tests/1.8/regression/metadata/fail/struct-align-zero/metadata
new file mode 100644 (file)
index 0000000..eeed9a7
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+struct Dummy1 {
+ uint8_t x;
+} align(0);
+
diff --git a/tests/1.8/regression/metadata/fail/struct-inner-struct-undefined/metadata b/tests/1.8/regression/metadata/fail/struct-inner-struct-undefined/metadata
new file mode 100644 (file)
index 0000000..cfd24b2
--- /dev/null
@@ -0,0 +1,23 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: structure 'dummy2' is not yet defined */
+struct dummy1 {
+       uint32_t field1;
+       struct dummy2 field2;
+};
+
+struct dummy2 {
+       uint32_t field3;
+};
+
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/struct-recursive/metadata b/tests/1.8/regression/metadata/fail/struct-recursive/metadata
new file mode 100644 (file)
index 0000000..067d70e
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: structure containing itself */
+struct dummy {
+  uint32_t field1;
+  struct dummy field2;
+};
+
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/struct-reserved-keywords/metadata b/tests/1.8/regression/metadata/fail/struct-reserved-keywords/metadata
new file mode 100644 (file)
index 0000000..4147c75
--- /dev/null
@@ -0,0 +1,21 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: reserved keywords used as fields */
+struct dummy {
+  uint32_t valid;
+  uint32_t callsite;
+  uint32_t env;
+  uint32_t stream;
+};
+
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/test.sh b/tests/1.8/regression/metadata/fail/test.sh
new file mode 100755 (executable)
index 0000000..382c756
--- /dev/null
@@ -0,0 +1,36 @@
+#!/bin/bash
+#
+# Copyright (C) - 2013 Christian Babeux <christian.babeux@efficios.com>
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License, version 2 only, as
+# published by the Free Software Foundation.
+#
+# This program is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+# more details.
+#
+# You should have received a copy of the GNU General Public License along with
+# this program; if not, write to the Free Software Foundation, Inc., 51
+# Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+CURDIR=$(dirname $0)
+UTILS_DIR=$CURDIR/../../../../../utils/
+
+source $UTILS_DIR/tap/tap.sh
+
+NUM_TESTS=1
+
+plan_tests $NUM_TESTS
+
+if [ "x${CTF_READER_BIN}" == "x" ]; then
+       echo "Bail out! No CTF_READER_BIN specified"
+       exit 1
+fi
+
+$CTF_READER_BIN $CTF_READER_OPTS $1 >/dev/null 2>&1
+
+result=$?
+
+is $result 1 $1
diff --git a/tests/1.8/regression/metadata/fail/typedef-redefinition/metadata b/tests/1.8/regression/metadata/fail/typedef-redefinition/metadata
new file mode 100644 (file)
index 0000000..c8c6ffb
--- /dev/null
@@ -0,0 +1,17 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+typealias integer { size = 64; align = 8; signed = false; } := uint64_t;
+
+/* Fail: duplicate typedef */
+typedef uint32_t myint;
+typedef uint64_t myint;
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/typedef-reserved-keyword/metadata b/tests/1.8/regression/metadata/fail/typedef-reserved-keyword/metadata
new file mode 100644 (file)
index 0000000..b504ca5
--- /dev/null
@@ -0,0 +1,15 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* Fail: cannot typedef a reserved keyword */
+typedef uint32_t int;
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/types01/metadata b/tests/1.8/regression/metadata/fail/types01/metadata
new file mode 100644 (file)
index 0000000..f734c50
--- /dev/null
@@ -0,0 +1,15 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: size = 0 */
+typealias integer { size = 0; align = 8; signed = false; } := uint0_t;    
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/types02/metadata b/tests/1.8/regression/metadata/fail/types02/metadata
new file mode 100644 (file)
index 0000000..64caaec
--- /dev/null
@@ -0,0 +1,15 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: Alignment values must be power of two. */
+typealias integer { size = 8; align = 17; signed = false; } := uint0_t;
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/types03/metadata b/tests/1.8/regression/metadata/fail/types03/metadata
new file mode 100644 (file)
index 0000000..66fdd53
--- /dev/null
@@ -0,0 +1,15 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: invalid byte ordering. */
+typealias integer { size = 8; align = 8; signed = false; byte_order = iroquois; } := uint8_t;
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/types04/metadata b/tests/1.8/regression/metadata/fail/types04/metadata
new file mode 100644 (file)
index 0000000..c3939db
--- /dev/null
@@ -0,0 +1,15 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: invalid signed. */
+typealias integer { size = 8; align = 8; signed = svp; } := uint8_t;
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/types05/metadata b/tests/1.8/regression/metadata/fail/types05/metadata
new file mode 100644 (file)
index 0000000..6d87f56
--- /dev/null
@@ -0,0 +1,15 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: negative size. */
+typealias integer { size = -8; align = 8; signed = false; } := uint8_t;
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/types06/metadata b/tests/1.8/regression/metadata/fail/types06/metadata
new file mode 100644 (file)
index 0000000..2d60c33
--- /dev/null
@@ -0,0 +1,15 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: negative align. */
+typealias integer { size = 8; align = -8; signed = false; } := uint8_t;
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/types07/metadata b/tests/1.8/regression/metadata/fail/types07/metadata
new file mode 100644 (file)
index 0000000..4b97a9c
--- /dev/null
@@ -0,0 +1,16 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: size as string. */
+typealias integer { size = "8"; align = 8; signed = false; } := uint8_t;
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/types08/metadata b/tests/1.8/regression/metadata/fail/types08/metadata
new file mode 100644 (file)
index 0000000..c2fd4af
--- /dev/null
@@ -0,0 +1,15 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: align as string. */
+typealias integer { size = 8; align = "8"; signed = false; } := uint8_t;
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/types09/metadata b/tests/1.8/regression/metadata/fail/types09/metadata
new file mode 100644 (file)
index 0000000..7f5f142
--- /dev/null
@@ -0,0 +1,16 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: signed as string. */
+typealias integer { size = 8; align = 8; signed = "false"; } := uint8_t;
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/types10/metadata b/tests/1.8/regression/metadata/fail/types10/metadata
new file mode 100644 (file)
index 0000000..86b6496
--- /dev/null
@@ -0,0 +1,15 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: name is a keyword. */
+typealias integer { size = 8; align = 8; signed = "false"; } := trace;
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/types11/metadata b/tests/1.8/regression/metadata/fail/types11/metadata
new file mode 100644 (file)
index 0000000..6ac5b82
--- /dev/null
@@ -0,0 +1,15 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: missing size. */
+typealias integer { align = 8; signed = "false"; } := uint8_t;
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/types12/metadata b/tests/1.8/regression/metadata/fail/types12/metadata
new file mode 100644 (file)
index 0000000..8057394
--- /dev/null
@@ -0,0 +1,15 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+/* FAIL: invalid kind. */
+typealias entier { size = 8; align = 8; signed = false; } := uint8_t;
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/types13/metadata b/tests/1.8/regression/metadata/fail/types13/metadata
new file mode 100644 (file)
index 0000000..d379426
--- /dev/null
@@ -0,0 +1,15 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+/* FAIL: base as a string. */
+typealias integer { size = 8; align = 8; signed = false; base = "decimal"; } := uint8_t;
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/types14/metadata b/tests/1.8/regression/metadata/fail/types14/metadata
new file mode 100644 (file)
index 0000000..051c230
--- /dev/null
@@ -0,0 +1,15 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+/* FAIL: invalid base. */
+typealias integer { size = 8; align = 8; signed = false; base = orthogonal; } := uint8_t;
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/types15/metadata b/tests/1.8/regression/metadata/fail/types15/metadata
new file mode 100644 (file)
index 0000000..6343188
--- /dev/null
@@ -0,0 +1,15 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+/* FAIL: invalid encoding. */
+typealias integer { size = 8; align = 8; signed = false; encoding = true; } := uint8_t;
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/types16/metadata b/tests/1.8/regression/metadata/fail/types16/metadata
new file mode 100644 (file)
index 0000000..4eeb883
--- /dev/null
@@ -0,0 +1,15 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+/* FAIL: encoding as a string. */
+typealias integer { size = 8; align = 8; signed = false; encoding = "ascii"; } := uint8_t;
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/fail/types17/metadata b/tests/1.8/regression/metadata/fail/types17/metadata
new file mode 100644 (file)
index 0000000..abeee11
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+typealias integer { size = 8; align = 8; signed = false; } := uint8_t;
+
+/* FAIL: out of range */
+enum dummy : uint8_t {
+  x = 1024
+};
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
+
+
diff --git a/tests/1.8/regression/metadata/fail/types18/metadata b/tests/1.8/regression/metadata/fail/types18/metadata
new file mode 100644 (file)
index 0000000..3477e20
--- /dev/null
@@ -0,0 +1,18 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: out of range */
+enum dummy : uint32_t {
+  x = -1
+};
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
+
+
diff --git a/tests/1.8/regression/metadata/fail/types19/metadata b/tests/1.8/regression/metadata/fail/types19/metadata
new file mode 100644 (file)
index 0000000..6d88bad
--- /dev/null
@@ -0,0 +1,18 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: implicite type int, but undefined. */
+enum dummy {
+  x = 1024
+};
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
+
+
diff --git a/tests/1.8/regression/metadata/fail/types20/metadata b/tests/1.8/regression/metadata/fail/types20/metadata
new file mode 100644 (file)
index 0000000..7f7405c
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: type int, but undefined. */
+struct dummy {
+  int xxx;
+};
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
+
+
diff --git a/tests/1.8/regression/metadata/fail/types21/metadata b/tests/1.8/regression/metadata/fail/types21/metadata
new file mode 100644 (file)
index 0000000..9933b4e
--- /dev/null
@@ -0,0 +1,20 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: duplicate name */
+struct dummy {
+  uint32_t xxx;
+  uint32_t xxx;
+};
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
+
+
diff --git a/tests/1.8/regression/metadata/fail/types22/metadata b/tests/1.8/regression/metadata/fail/types22/metadata
new file mode 100644 (file)
index 0000000..eb05c32
--- /dev/null
@@ -0,0 +1,23 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: duplicate name. */
+struct a {
+  uint32_t xxx;
+};
+
+struct a {
+  uint32_t xxx;
+};
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
+
+
diff --git a/tests/1.8/regression/metadata/fail/types23/metadata b/tests/1.8/regression/metadata/fail/types23/metadata
new file mode 100644 (file)
index 0000000..326f730
--- /dev/null
@@ -0,0 +1,17 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: duplicate name. */
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
+
+
diff --git a/tests/1.8/regression/metadata/fail/types24/metadata b/tests/1.8/regression/metadata/fail/types24/metadata
new file mode 100644 (file)
index 0000000..666933a
--- /dev/null
@@ -0,0 +1,20 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: keyword as a field. */
+struct a {
+  uint32_t trace;
+};
+
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
+
+
diff --git a/tests/1.8/regression/metadata/fail/types25/metadata b/tests/1.8/regression/metadata/fail/types25/metadata
new file mode 100644 (file)
index 0000000..5ca0fb5
--- /dev/null
@@ -0,0 +1,20 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: keyword as a field. */
+struct a {
+  uint32_t x;
+} align(-1);
+
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
+
+
diff --git a/tests/1.8/regression/metadata/fail/types26/metadata b/tests/1.8/regression/metadata/fail/types26/metadata
new file mode 100644 (file)
index 0000000..3d1b760
--- /dev/null
@@ -0,0 +1,17 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* FAIL: negative array. */
+typedef uint32_t name[-1];
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
+
+
diff --git a/tests/1.8/regression/metadata/fail/variant-missing-selector/metadata b/tests/1.8/regression/metadata/fail/variant-missing-selector/metadata
new file mode 100644 (file)
index 0000000..7aa82fa
--- /dev/null
@@ -0,0 +1,25 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+struct Mystruct {
+enum : uint32_t { sel1, sel2, sel3 } tag;
+
+variant MyVariant<tag> {
+  struct { uint8_t _; } sel1;
+  struct { uint16_t _; } sel2;
+} field;
+
+};
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/fail/variant-missing-tag/metadata b/tests/1.8/regression/metadata/fail/variant-missing-tag/metadata
new file mode 100644 (file)
index 0000000..cf1c984
--- /dev/null
@@ -0,0 +1,27 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+struct Mystruct {
+
+enum : uint32_t { sel1, sel2, sel3 } tag;
+
+variant <> {
+  struct { uint8_t _; } sel1;
+  struct { uint16_t _; } sel2;
+  struct { uint32_t _; } sel3;
+} field;
+
+};
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/fail/variant-string-fields/metadata b/tests/1.8/regression/metadata/fail/variant-string-fields/metadata
new file mode 100644 (file)
index 0000000..926bec3
--- /dev/null
@@ -0,0 +1,27 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+struct Mystruct {
+
+enum : uint32_t { " sel1 ", " sel2 ", " sel3 " } tag;
+
+variant MyVariant<tag> {
+  struct { uint8_t _; } sel1;
+  struct { uint16_t _; } sel2;
+  struct { uint32_t _; } sel3;
+} field;
+
+};
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/fail/variant-tag-integer/metadata b/tests/1.8/regression/metadata/fail/variant-tag-integer/metadata
new file mode 100644 (file)
index 0000000..46b3a4b
--- /dev/null
@@ -0,0 +1,27 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+struct Mystruct {
+
+enum : uint32_t { sel1, sel2, sel3 } tag;
+
+variant <2> {
+  struct { uint8_t _; } sel1;
+  struct { uint16_t _; } sel2;
+  struct { uint32_t _; } sel3;
+} field;
+
+};
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/fail/variant-tag-keyword/metadata b/tests/1.8/regression/metadata/fail/variant-tag-keyword/metadata
new file mode 100644 (file)
index 0000000..000226a
--- /dev/null
@@ -0,0 +1,27 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+struct Mystruct {
+
+enum : uint32_t { sel1, sel2, sel3 } tag;
+
+variant <variant> {
+  struct { uint8_t _; } sel1;
+  struct { uint16_t _; } sel2;
+  struct { uint32_t _; } sel3;
+} field;
+
+};
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/fail/variant-tag-string/metadata b/tests/1.8/regression/metadata/fail/variant-tag-string/metadata
new file mode 100644 (file)
index 0000000..fc89a6f
--- /dev/null
@@ -0,0 +1,27 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+struct Mystruct {
+
+enum : uint32_t { sel1, sel2, sel3 } tag;
+
+variant <"tag"> {
+  struct { uint8_t _; } sel1;
+  struct { uint16_t _; } sel2;
+  struct { uint32_t _; } sel3;
+} field;
+
+};
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/fail/variant-tag-type-floating/metadata b/tests/1.8/regression/metadata/fail/variant-tag-type-floating/metadata
new file mode 100644 (file)
index 0000000..2ee997b
--- /dev/null
@@ -0,0 +1,25 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+typealias floating_point { exp_dig = 8; mant_dig = 24; } := FLOAT;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+struct Mystruct {
+
+FLOAT tag;
+
+variant <tag> {
+} field;
+
+};
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/fail/variant-tag-type-string/metadata b/tests/1.8/regression/metadata/fail/variant-tag-type-string/metadata
new file mode 100644 (file)
index 0000000..c875127
--- /dev/null
@@ -0,0 +1,25 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+typealias string { encoding = ascii; } := str;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+struct Mystruct {
+
+str tag;
+
+variant <tag> {
+} field;
+
+};
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/pass/array-basic-1dim/metadata b/tests/1.8/regression/metadata/pass/array-basic-1dim/metadata
new file mode 100644 (file)
index 0000000..4153f73
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+typedef uint32_t A[10];
+typedef uint16_t B[2];
+typedef uint8_t C[1];
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/pass/array-basic-2dim-2typedef/metadata b/tests/1.8/regression/metadata/pass/array-basic-2dim-2typedef/metadata
new file mode 100644 (file)
index 0000000..1045706
--- /dev/null
@@ -0,0 +1,23 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+typedef uint32_t A[10];
+typedef uint16_t B[2];
+typedef uint8_t C[1];
+
+typedef A X[1];
+typedef B Y[1];
+typedef C Z[1];
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/pass/array-basic-2dim-typedef/metadata b/tests/1.8/regression/metadata/pass/array-basic-2dim-typedef/metadata
new file mode 100644 (file)
index 0000000..da15d10
--- /dev/null
@@ -0,0 +1,23 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+typedef uint32_t A[10][1];
+typedef uint16_t B[2][1];
+typedef uint8_t C[1][1];
+
+typedef A X[1][1];
+typedef B Y[1][1];
+typedef C Z[1][1];
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/pass/array-basic-2dim/metadata b/tests/1.8/regression/metadata/pass/array-basic-2dim/metadata
new file mode 100644 (file)
index 0000000..a84cc24
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+typedef uint32_t A[10][1];
+typedef uint16_t B[2][1];
+typedef uint8_t C[1][1];
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/pass/array-of-enum/metadata b/tests/1.8/regression/metadata/pass/array-of-enum/metadata
new file mode 100644 (file)
index 0000000..25ada2f
--- /dev/null
@@ -0,0 +1,22 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+typedef enum : uint8_t {
+  X, Y, Z
+} MyEnum;
+
+
+typedef MyEnum MyArray[1024];
diff --git a/tests/1.8/regression/metadata/pass/array-of-struct/metadata b/tests/1.8/regression/metadata/pass/array-of-struct/metadata
new file mode 100644 (file)
index 0000000..b444aed
--- /dev/null
@@ -0,0 +1,22 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+typedef struct {
+  uint32_t A[10];
+} MyStruct;
+
+
+typedef MyStruct MyArray[1024];
diff --git a/tests/1.8/regression/metadata/pass/enum-empty/metadata b/tests/1.8/regression/metadata/pass/enum-empty/metadata
new file mode 100644 (file)
index 0000000..8fda8b1
--- /dev/null
@@ -0,0 +1,24 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := int;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = string;
+       fields := struct {
+          // To be specified into the standard.
+          enum {} field;
+       };
+};
diff --git a/tests/1.8/regression/metadata/pass/enum-nameless/metadata b/tests/1.8/regression/metadata/pass/enum-nameless/metadata
new file mode 100644 (file)
index 0000000..0eb053a
--- /dev/null
@@ -0,0 +1,24 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+/* Enum can be nameless */
+event {
+       name = string;
+       fields := struct {
+          enum : uint8_t {
+                 VAL1, VAL2, VAL3
+          } field;
+       };
+};
diff --git a/tests/1.8/regression/metadata/pass/enum-token-kind/metadata b/tests/1.8/regression/metadata/pass/enum-token-kind/metadata
new file mode 100644 (file)
index 0000000..e146055
--- /dev/null
@@ -0,0 +1,26 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+/* Enum can be nameless */
+event {
+       name = string;
+       fields := struct {
+          enum : uint8_t {
+                 "VAL1", 
+                 "VAL 1",
+                 VAL_1
+          } field;
+       };
+};
diff --git a/tests/1.8/regression/metadata/pass/enum-untyped-int/metadata b/tests/1.8/regression/metadata/pass/enum-untyped-int/metadata
new file mode 100644 (file)
index 0000000..108554a
--- /dev/null
@@ -0,0 +1,27 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := int;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = string;
+       fields := struct {
+         /*  An untyped enum is typed with "int". */
+          enum {
+                 VAL1
+          } field;
+       };
+};
+
diff --git a/tests/1.8/regression/metadata/pass/enum-values-signed-big/metadata b/tests/1.8/regression/metadata/pass/enum-values-signed-big/metadata
new file mode 100644 (file)
index 0000000..4ba0b12
--- /dev/null
@@ -0,0 +1,27 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+typealias integer { size = 32; align = 32; signed = true; base = hex; } := TYPE;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+/* Value 127 is the max value of TYPE. */
+event {
+       name = string;
+       fields := struct {
+          enum : TYPE {
+                 VAL1, 
+                 VAL2, 
+                 VAL3  = 127
+          } field;
+       };
+};
diff --git a/tests/1.8/regression/metadata/pass/enum-values-signed-small/metadata b/tests/1.8/regression/metadata/pass/enum-values-signed-small/metadata
new file mode 100644 (file)
index 0000000..c29b5e8
--- /dev/null
@@ -0,0 +1,27 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+typealias integer { size = 32; align = 32; signed = true; base = hex; } := TYPE;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+/* Value -128 is the min value of TYPE. */
+event {
+       name = string;
+       fields := struct {
+          enum : TYPE {
+                 VAL1, 
+                 VAL2, 
+                 VAL3  = -128
+          } field;
+       };
+};
diff --git a/tests/1.8/regression/metadata/pass/enum-values-signed-value/metadata b/tests/1.8/regression/metadata/pass/enum-values-signed-value/metadata
new file mode 100644 (file)
index 0000000..8a4d594
--- /dev/null
@@ -0,0 +1,27 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+typealias integer { size = 8; align = 8; signed = true; base = 10; } := TYPE;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+/* Negative value are allowed for signed enum. */
+event {
+       name = string;
+       fields := struct {
+          enum : TYPE {
+                 VAL1, 
+                 VAL2, 
+                 VAL3  = -1
+          } field;
+       };
+};
diff --git a/tests/1.8/regression/metadata/pass/enum-values-unsigned-big/metadata b/tests/1.8/regression/metadata/pass/enum-values-unsigned-big/metadata
new file mode 100644 (file)
index 0000000..5da3851
--- /dev/null
@@ -0,0 +1,27 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := TYPE;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+/* Value 255 is the max value of TYPE. */
+event {
+       name = string;
+       fields := struct {
+          enum : TYPE {
+                 VAL1, 
+                 VAL2, 
+                 VAL3  = 255
+          } field;
+       };
+};
diff --git a/tests/1.8/regression/metadata/pass/minimal/metadata b/tests/1.8/regression/metadata/pass/minimal/metadata
new file mode 100644 (file)
index 0000000..4b5ebad
--- /dev/null
@@ -0,0 +1,7 @@
+/* CTF 1.8 */
+
+trace {
+       major = 1;
+       minor = 8;
+       byte_order = le;
+};
diff --git a/tests/1.8/regression/metadata/pass/name-escaping-clashes/metadata b/tests/1.8/regression/metadata/pass/name-escaping-clashes/metadata
new file mode 100644 (file)
index 0000000..dc5a305
--- /dev/null
@@ -0,0 +1,24 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+/* The first character is an escape char and is removed. */
+/* Thus str and _str are the same field, and should fail. */
+event {
+       name = string;
+       fields := struct {
+          string str;
+          string _str;
+       };
+};
diff --git a/tests/1.8/regression/metadata/pass/name-escaping-empty/metadata b/tests/1.8/regression/metadata/pass/name-escaping-empty/metadata
new file mode 100644 (file)
index 0000000..a7c32a1
--- /dev/null
@@ -0,0 +1,25 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+/* The first character is an escape char and is removed. */
+/* Thus the field _ will produce an empty string. */
+event {
+       name = string;
+       fields := struct {
+          string _;
+          string __;
+          string ___;
+       };
+};
diff --git a/tests/1.8/regression/metadata/pass/run.sh b/tests/1.8/regression/metadata/pass/run.sh
new file mode 100755 (executable)
index 0000000..f23416c
--- /dev/null
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+. ../../../../../utils/run.sh
diff --git a/tests/1.8/regression/metadata/pass/sequence-basic-1dim/metadata b/tests/1.8/regression/metadata/pass/sequence-basic-1dim/metadata
new file mode 100644 (file)
index 0000000..aa13771
--- /dev/null
@@ -0,0 +1,25 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = string;
+       fields := struct {
+               uint8_t len;
+               uint32_t A[len];
+       };
+};
diff --git a/tests/1.8/regression/metadata/pass/sequence-basic-2dim/metadata b/tests/1.8/regression/metadata/pass/sequence-basic-2dim/metadata
new file mode 100644 (file)
index 0000000..4460909
--- /dev/null
@@ -0,0 +1,25 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = string;
+       fields := struct {
+               uint8_t len;
+               uint32_t A[len][len];
+       };
+};
diff --git a/tests/1.8/regression/metadata/pass/sequence-scoped-length/metadata b/tests/1.8/regression/metadata/pass/sequence-scoped-length/metadata
new file mode 100644 (file)
index 0000000..31c2e0a
--- /dev/null
@@ -0,0 +1,27 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = string;
+       fields := struct {
+               uint8_t len;
+               struct {
+                 uint32_t A[len];
+               } field;
+       };
+};
diff --git a/tests/1.8/regression/metadata/pass/sequence-typedef-length/metadata b/tests/1.8/regression/metadata/pass/sequence-typedef-length/metadata
new file mode 100644 (file)
index 0000000..8d5503f
--- /dev/null
@@ -0,0 +1,29 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = string;
+       fields := struct {
+               uint8_t len;
+               typedef struct { uint32_t A[len]; } Field;
+               struct {
+                       string len;
+                       Field x;
+               } field;
+       };
+};
diff --git a/tests/1.8/regression/metadata/pass/string-literal-escape/dummystream b/tests/1.8/regression/metadata/pass/string-literal-escape/dummystream
new file mode 100644 (file)
index 0000000..53d735e
Binary files /dev/null and b/tests/1.8/regression/metadata/pass/string-literal-escape/dummystream differ
diff --git a/tests/1.8/regression/metadata/pass/string-literal-escape/metadata b/tests/1.8/regression/metadata/pass/string-literal-escape/metadata
new file mode 100644 (file)
index 0000000..71d6c18
--- /dev/null
@@ -0,0 +1,41 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       test2 = "?\x20\040\123\0?";
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+/* use babeltrace -f trace:hostname to print. */
+
+/*
+ * Expected:
+
+abc " hex: A, #, #, #1,
+oct: A, #, #, #1,
+
+ */
+
+env {
+       hostname = "\nabc \" hex: \x41, \x23, \x023, \x0231,\noct: \101, \043, \43, \0431, \0NOT SEEN";
+};
+
+stream {
+       packet.context := struct {
+               uint32_t content_size;
+               uint32_t packet_size;
+       };
+};
+
+event {
+       name = string;
+       fields := struct { string str; };
+};
diff --git a/tests/1.8/regression/metadata/pass/struct-align-larger/metadata b/tests/1.8/regression/metadata/pass/struct-align-larger/metadata
new file mode 100644 (file)
index 0000000..ccd510c
--- /dev/null
@@ -0,0 +1,20 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* PASS: struct should be aligned to 16 bits (follows the specified value). */
+struct dummy {
+  uint32_t field1;
+  uint32_t field2;
+  uint32_t field3;
+} align(16);
+
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/pass/struct-align-smaller/metadata b/tests/1.8/regression/metadata/pass/struct-align-smaller/metadata
new file mode 100644 (file)
index 0000000..6c5e280
--- /dev/null
@@ -0,0 +1,23 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/*
+ * PASS: struct should be aligned to 8 bits (fields' value is larger than the
+ * one specified by the struct).
+ */
+struct dummy {
+  uint32_t field1;
+  uint32_t field2;
+  uint32_t field3;
+} align(4);
+
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/pass/struct-align-valid/metadata b/tests/1.8/regression/metadata/pass/struct-align-valid/metadata
new file mode 100644 (file)
index 0000000..ad8e755
--- /dev/null
@@ -0,0 +1,26 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+struct Dummy1 {
+ uint8_t x;
+} align(8);
+
+struct Dummy2 {
+ uint8_t x;
+} align(16);
+
+struct Dummy3 {
+ uint8_t x;
+} align(32);
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/pass/struct-inner-struct/metadata b/tests/1.8/regression/metadata/pass/struct-inner-struct/metadata
new file mode 100644 (file)
index 0000000..8c5ce95
--- /dev/null
@@ -0,0 +1,23 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+struct dummy1 {
+       uint32_t field1;
+}
+
+/* PASS: Inner structure is defined earlier */
+struct dummy2 {
+       uint32_t field2;
+       struct dummy1 field3;
+};
+
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/pass/struct-unamed-struct-as-field/metadata b/tests/1.8/regression/metadata/pass/struct-unamed-struct-as-field/metadata
new file mode 100644 (file)
index 0000000..042e802
--- /dev/null
@@ -0,0 +1,22 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := int;
+
+/* PASS: unnamed struct type used as field */
+struct dummy {
+       int normal_field;
+       struct {
+               int sub_field1;
+               int sub_field2;
+       } x;
+};
+
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               int magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/pass/struct-underscores-in-fields/metadata b/tests/1.8/regression/metadata/pass/struct-underscores-in-fields/metadata
new file mode 100644 (file)
index 0000000..12e8c0d
--- /dev/null
@@ -0,0 +1,20 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* PASS: 'field' and '_field' should be different fields */
+struct dummy {
+  uint32_t field;
+  uint32_t _field;
+  uint32_t __field;
+};
+
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/pass/succeed4/metadata b/tests/1.8/regression/metadata/pass/succeed4/metadata
new file mode 100644 (file)
index 0000000..a3d401a
--- /dev/null
@@ -0,0 +1,31 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       test = 0xABC234;        /* hexadecimal */
+       test1 = 06534;          /* octal */
+       test2 = 1234;           /* decimal */
+       test3 = +1234;          /* decimal with + unary op */
+       test4 = -1234;          /* decimal (negated) */
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+stream {
+       packet.context := struct {
+               uint32_t content_size;
+               uint32_t packet_size;
+       };
+};
+
+event {
+       name = string;
+       fields := struct { string str; };
+};
diff --git a/tests/1.8/regression/metadata/pass/test.sh b/tests/1.8/regression/metadata/pass/test.sh
new file mode 100755 (executable)
index 0000000..99533c1
--- /dev/null
@@ -0,0 +1,36 @@
+#!/bin/bash
+#
+# Copyright (C) - 2013 Christian Babeux <christian.babeux@efficios.com>
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License, version 2 only, as
+# published by the Free Software Foundation.
+#
+# This program is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+# more details.
+#
+# You should have received a copy of the GNU General Public License along with
+# this program; if not, write to the Free Software Foundation, Inc., 51
+# Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+CURDIR=$(dirname $0)
+UTILS_DIR=$CURDIR/../../../../../utils/
+
+source $UTILS_DIR/tap/tap.sh
+
+NUM_TESTS=1
+
+plan_tests $NUM_TESTS
+
+if [ "x${CTF_READER_BIN}" == "x" ]; then
+       echo "Bail out! No CTF_READER_BIN specified"
+       exit 1
+fi
+
+$CTF_READER_BIN $CTF_READER_OPTS $1 >/dev/null 2>&1
+
+result=$?
+
+is $result 0 $1
diff --git a/tests/1.8/regression/metadata/pass/typealias-reserved-keyword/metadata b/tests/1.8/regression/metadata/pass/typealias-reserved-keyword/metadata
new file mode 100644 (file)
index 0000000..925685d
--- /dev/null
@@ -0,0 +1,20 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* PASS: It's possible to typedef reserved keywords */
+typealias uint32_t := int;
+
+struct mystruct {
+       uint32_t field1;
+       int field2;
+};
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/pass/typealias-simple/metadata b/tests/1.8/regression/metadata/pass/typealias-simple/metadata
new file mode 100644 (file)
index 0000000..847cd31
--- /dev/null
@@ -0,0 +1,20 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* PASS: straight typealias */
+typealias uint32_t := myint;
+
+struct mystruct {
+       uint32_t field1;
+       myint field2;
+};
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/pass/typedef-simple/metadata b/tests/1.8/regression/metadata/pass/typedef-simple/metadata
new file mode 100644 (file)
index 0000000..45587ea
--- /dev/null
@@ -0,0 +1,15 @@
+/* CTF 1.8 */
+
+typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
+
+/* PASS: straight typedef */
+typedef uint32_t myint;
+
+trace {
+       major = 2;
+       minor = 1;
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+       };
+};
diff --git a/tests/1.8/regression/metadata/pass/unknown-env/metadata b/tests/1.8/regression/metadata/pass/unknown-env/metadata
new file mode 100644 (file)
index 0000000..f3618e2
--- /dev/null
@@ -0,0 +1,30 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+env {
+       dummy = "blah";
+};
+
+stream {
+       packet.context := struct {
+               uint32_t content_size;
+               uint32_t packet_size;
+       };
+};
+
+event {
+       name = string;
+       fields := struct { string str; };
+};
diff --git a/tests/1.8/regression/metadata/pass/variant-integers-unnamed/metadata b/tests/1.8/regression/metadata/pass/variant-integers-unnamed/metadata
new file mode 100644 (file)
index 0000000..c99cec8
--- /dev/null
@@ -0,0 +1,26 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+struct Mystruct {
+enum : uint32_t { sel1, sel2, sel3 } tag;
+
+variant<tag> {
+  uint8_t sel1;
+  uint16_t sel2;
+  uint32_t sel3;
+} field;
+
+};
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/pass/variant-integers/metadata b/tests/1.8/regression/metadata/pass/variant-integers/metadata
new file mode 100644 (file)
index 0000000..cbcdd0c
--- /dev/null
@@ -0,0 +1,26 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+struct Mystruct {
+enum : uint32_t { sel1, sel2, sel3 } tag;
+
+variant MyVariant<tag> {
+  uint8_t sel1;
+  uint16_t sel2;
+  uint32_t sel3;
+} field;
+
+};
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/pass/variant-missing-selector/metadata b/tests/1.8/regression/metadata/pass/variant-missing-selector/metadata
new file mode 100644 (file)
index 0000000..7aa82fa
--- /dev/null
@@ -0,0 +1,25 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+struct Mystruct {
+enum : uint32_t { sel1, sel2, sel3 } tag;
+
+variant MyVariant<tag> {
+  struct { uint8_t _; } sel1;
+  struct { uint16_t _; } sel2;
+} field;
+
+};
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/pass/variant-scope-tag/metadata b/tests/1.8/regression/metadata/pass/variant-scope-tag/metadata
new file mode 100644 (file)
index 0000000..0961f7b
--- /dev/null
@@ -0,0 +1,29 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+typealias  enum : uint32_t { sel1, sel2, sel3 } := X;
+
+struct MyStruct {
+
+X tag;
+
+variant Y<tag> {
+  struct { uint8_t _; } sel1;
+  struct { uint16_t _; } sel2;
+  struct { uint32_t _; } sel3;
+} field;
+
+};
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/pass/variant-structs/metadata b/tests/1.8/regression/metadata/pass/variant-structs/metadata
new file mode 100644 (file)
index 0000000..bb41933
--- /dev/null
@@ -0,0 +1,26 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+struct Mystruct {
+enum : uint32_t { sel1, sel2, sel3 } tag;
+
+variant MyVariant<tag> {
+  struct { uint8_t _; } sel1;
+  struct { uint16_t _; } sel2;
+  struct { uint32_t _; } sel3;
+} field;
+
+};
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/pass/variant-two-levels-redefinition/metadata b/tests/1.8/regression/metadata/pass/variant-two-levels-redefinition/metadata
new file mode 100644 (file)
index 0000000..df5b5a3
--- /dev/null
@@ -0,0 +1,47 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+struct Mystruct {
+enum : uint32_t { sel1, sel2, sel3 } tag;
+
+variant<tag> {
+  struct {
+       enum : uint32_t { s1, s2, s3 } tag;
+    variant<tag> {
+         uint8_t s1;
+         uint8_t s2;
+         uint8_t s3;
+       } _;
+  } sel1;
+  struct {
+       enum : uint32_t { s1, s2, s3 } tag;
+    variant<tag> {
+         uint16_t s1;
+         uint16_t s2;
+         uint16_t s3;
+       } _;
+  } sel2;
+  struct {
+       enum : uint32_t { s1, s2, s3 } tag;
+    variant<tag> {
+         uint32_t s1;
+         uint32_t s2;
+         uint32_t s3;
+       } _;
+  } sel3;
+} field;
+
+};
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/pass/variant-two-levels/metadata b/tests/1.8/regression/metadata/pass/variant-two-levels/metadata
new file mode 100644 (file)
index 0000000..ba92186
--- /dev/null
@@ -0,0 +1,44 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 16; align = 8; signed = false; base = 10; } := uint16_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[0x10];
+       };
+};
+
+struct Mystruct {
+enum : uint32_t { sel1, sel2, sel3 } tag;
+
+variant<tag> {
+  struct {
+    variant<tag> {
+         uint8_t sel1;
+         uint8_t sel2;
+         uint8_t sel3;
+       } _;
+  } sel1;
+  struct {
+    variant<tag> {
+         uint16_t sel1;
+         uint16_t sel2;
+         uint16_t sel3;
+       } _;
+  } sel2;
+  struct {
+    variant<tag> {
+         uint32_t sel1;
+         uint32_t sel2;
+         uint32_t sel3;
+       } _;
+  } sel3;
+} field;
+
+};
\ No newline at end of file
diff --git a/tests/1.8/regression/metadata/pass/warnings/metadata b/tests/1.8/regression/metadata/pass/warnings/metadata
new file mode 100644 (file)
index 0000000..30ca784
--- /dev/null
@@ -0,0 +1,29 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; aa = bb; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; zz = aa; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+       blah = "aaa";
+};
+
+stream {
+       packet.context := struct {
+               uint32_t content_size;
+               uint32_t packet_size;
+       };
+       askdjfhaskdjfh = 1;
+};
+
+event {
+       name = string;
+       fields := struct { string str; };
+       asdjfhah := struct { uint8_t ffff; };
+};
diff --git a/tests/1.8/regression/metadata/run.sh b/tests/1.8/regression/metadata/run.sh
new file mode 100755 (executable)
index 0000000..78e3be0
--- /dev/null
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+for dir in */; do
+       echo "Running ${dir} tests"
+       cd ${dir}
+       ./run.sh
+       cd ..
+done
diff --git a/tests/1.8/regression/run.sh b/tests/1.8/regression/run.sh
new file mode 100755 (executable)
index 0000000..78e3be0
--- /dev/null
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+for dir in */; do
+       echo "Running ${dir} tests"
+       cd ${dir}
+       ./run.sh
+       cd ..
+done
diff --git a/tests/1.8/regression/stream/fail/2-packets-no-packet-size/dummystream b/tests/1.8/regression/stream/fail/2-packets-no-packet-size/dummystream
new file mode 100644 (file)
index 0000000..12e6232
Binary files /dev/null and b/tests/1.8/regression/stream/fail/2-packets-no-packet-size/dummystream differ
diff --git a/tests/1.8/regression/stream/fail/2-packets-no-packet-size/metadata b/tests/1.8/regression/stream/fail/2-packets-no-packet-size/metadata
new file mode 100644 (file)
index 0000000..6d0c4b1
--- /dev/null
@@ -0,0 +1,25 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 8; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+stream {
+       packet.context := struct {
+               uint32_t content_size;
+       };
+};
+
+event {
+       name = myevent;
+       fields := struct { uint32_t f; };
+};
diff --git a/tests/1.8/regression/stream/fail/content-size-larger-than-packet-size/dummystream b/tests/1.8/regression/stream/fail/content-size-larger-than-packet-size/dummystream
new file mode 100644 (file)
index 0000000..8281829
Binary files /dev/null and b/tests/1.8/regression/stream/fail/content-size-larger-than-packet-size/dummystream differ
diff --git a/tests/1.8/regression/stream/fail/content-size-larger-than-packet-size/metadata b/tests/1.8/regression/stream/fail/content-size-larger-than-packet-size/metadata
new file mode 100644 (file)
index 0000000..724e550
--- /dev/null
@@ -0,0 +1,25 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 8; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+stream {
+       packet.context := struct {
+               uint32_t packet_size;
+       };
+};
+
+event {
+       name = myevent;
+       fields := struct { uint32_t f; };
+};
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-alignment-empty-struct/dummystream b/tests/1.8/regression/stream/fail/cross-packet-event-alignment-empty-struct/dummystream
new file mode 100644 (file)
index 0000000..cc9e627
Binary files /dev/null and b/tests/1.8/regression/stream/fail/cross-packet-event-alignment-empty-struct/dummystream differ
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-alignment-empty-struct/metadata b/tests/1.8/regression/stream/fail/cross-packet-event-alignment-empty-struct/metadata
new file mode 100644 (file)
index 0000000..39e5a58
--- /dev/null
@@ -0,0 +1,26 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 8; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+stream {
+       packet.context := struct {
+               uint32_t packet_size;
+               uint32_t content_size;
+       };
+};
+
+event {
+       name = myevent;
+       fields := struct { uint32_t f; struct {} align(64) s; };
+};
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-alignment-integer/dummystream b/tests/1.8/regression/stream/fail/cross-packet-event-alignment-integer/dummystream
new file mode 100644 (file)
index 0000000..a143071
Binary files /dev/null and b/tests/1.8/regression/stream/fail/cross-packet-event-alignment-integer/dummystream differ
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-alignment-integer/metadata b/tests/1.8/regression/stream/fail/cross-packet-event-alignment-integer/metadata
new file mode 100644 (file)
index 0000000..5a4b5ae
--- /dev/null
@@ -0,0 +1,27 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 8; signed = false; base = hex; } := uint32_t;
+typealias integer { size = 32; align = 64; signed = false; base = hex; } := uint32_largealign_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+stream {
+       packet.context := struct {
+               uint32_t packet_size;
+               uint32_t content_size;
+       };
+};
+
+event {
+       name = myevent;
+       fields := struct { uint32_largealign_t f; };
+};
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-array-of-integers/dummystream b/tests/1.8/regression/stream/fail/cross-packet-event-array-of-integers/dummystream
new file mode 100644 (file)
index 0000000..a143071
Binary files /dev/null and b/tests/1.8/regression/stream/fail/cross-packet-event-array-of-integers/dummystream differ
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-array-of-integers/metadata b/tests/1.8/regression/stream/fail/cross-packet-event-array-of-integers/metadata
new file mode 100644 (file)
index 0000000..6019aca
--- /dev/null
@@ -0,0 +1,26 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 8; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+stream {
+       packet.context := struct {
+               uint32_t packet_size;
+               uint32_t content_size;
+       };
+};
+
+event {
+       name = myevent;
+       fields := struct { uint32_t f[2]; };
+};
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-float/dummystream b/tests/1.8/regression/stream/fail/cross-packet-event-float/dummystream
new file mode 100644 (file)
index 0000000..a143071
Binary files /dev/null and b/tests/1.8/regression/stream/fail/cross-packet-event-float/dummystream differ
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-float/metadata b/tests/1.8/regression/stream/fail/cross-packet-event-float/metadata
new file mode 100644 (file)
index 0000000..e979175
--- /dev/null
@@ -0,0 +1,28 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 8; signed = false; base = hex; } := uint32_t;
+typealias integer { size = 64; align = 8; signed = false; base = hex; } := uint64_t;
+typealias floating_point { exp_dig = 11; mant_dig = 53; } := double;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+stream {
+       packet.context := struct {
+               uint32_t packet_size;
+               uint32_t content_size;
+       };
+};
+
+event {
+       name = myevent;
+       fields := struct { double f; };
+};
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-integer/dummystream b/tests/1.8/regression/stream/fail/cross-packet-event-integer/dummystream
new file mode 100644 (file)
index 0000000..a143071
Binary files /dev/null and b/tests/1.8/regression/stream/fail/cross-packet-event-integer/dummystream differ
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-integer/metadata b/tests/1.8/regression/stream/fail/cross-packet-event-integer/metadata
new file mode 100644 (file)
index 0000000..6b803d7
--- /dev/null
@@ -0,0 +1,27 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 8; signed = false; base = hex; } := uint32_t;
+typealias integer { size = 64; align = 8; signed = false; base = hex; } := uint64_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+stream {
+       packet.context := struct {
+               uint32_t packet_size;
+               uint32_t content_size;
+       };
+};
+
+event {
+       name = myevent;
+       fields := struct { uint64_t f; };
+};
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-len-of-sequence/dummystream b/tests/1.8/regression/stream/fail/cross-packet-event-len-of-sequence/dummystream
new file mode 100644 (file)
index 0000000..97fc266
Binary files /dev/null and b/tests/1.8/regression/stream/fail/cross-packet-event-len-of-sequence/dummystream differ
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-len-of-sequence/metadata b/tests/1.8/regression/stream/fail/cross-packet-event-len-of-sequence/metadata
new file mode 100644 (file)
index 0000000..0c57a00
--- /dev/null
@@ -0,0 +1,27 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 8; signed = false; base = hex; } := uint32_t;
+typealias integer { size = 64; align = 8; signed = false; base = hex; } := uint64_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+stream {
+       packet.context := struct {
+               uint32_t packet_size;
+               uint32_t content_size;
+       };
+};
+
+event {
+       name = myevent;
+       fields := struct { uint64_t len; uint32_t blah[len]; };
+};
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-sequence-between-elements/dummystream b/tests/1.8/regression/stream/fail/cross-packet-event-sequence-between-elements/dummystream
new file mode 100644 (file)
index 0000000..4e0b634
Binary files /dev/null and b/tests/1.8/regression/stream/fail/cross-packet-event-sequence-between-elements/dummystream differ
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-sequence-between-elements/metadata b/tests/1.8/regression/stream/fail/cross-packet-event-sequence-between-elements/metadata
new file mode 100644 (file)
index 0000000..b26667e
--- /dev/null
@@ -0,0 +1,27 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 8; signed = false; base = hex; } := uint32_t;
+typealias integer { size = 64; align = 8; signed = false; base = hex; } := uint64_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+stream {
+       packet.context := struct {
+               uint32_t packet_size;
+               uint32_t content_size;
+       };
+};
+
+event {
+       name = myevent;
+       fields := struct { uint8_t len; uint8_t blah[len]; };
+};
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-sequence-start/dummystream b/tests/1.8/regression/stream/fail/cross-packet-event-sequence-start/dummystream
new file mode 100644 (file)
index 0000000..ec8373c
Binary files /dev/null and b/tests/1.8/regression/stream/fail/cross-packet-event-sequence-start/dummystream differ
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-sequence-start/metadata b/tests/1.8/regression/stream/fail/cross-packet-event-sequence-start/metadata
new file mode 100644 (file)
index 0000000..d414591
--- /dev/null
@@ -0,0 +1,27 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 8; signed = false; base = hex; } := uint32_t;
+typealias integer { size = 64; align = 8; signed = false; base = hex; } := uint64_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+stream {
+       packet.context := struct {
+               uint32_t packet_size;
+               uint32_t content_size;
+       };
+};
+
+event {
+       name = myevent;
+       fields := struct { uint32_t len; uint32_t blah[len]; };
+};
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-sequence-within-element/dummystream b/tests/1.8/regression/stream/fail/cross-packet-event-sequence-within-element/dummystream
new file mode 100644 (file)
index 0000000..f5fc639
Binary files /dev/null and b/tests/1.8/regression/stream/fail/cross-packet-event-sequence-within-element/dummystream differ
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-sequence-within-element/metadata b/tests/1.8/regression/stream/fail/cross-packet-event-sequence-within-element/metadata
new file mode 100644 (file)
index 0000000..cb9246b
--- /dev/null
@@ -0,0 +1,27 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 8; signed = false; base = hex; } := uint32_t;
+typealias integer { size = 64; align = 8; signed = false; base = hex; } := uint64_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+stream {
+       packet.context := struct {
+               uint32_t packet_size;
+               uint32_t content_size;
+       };
+};
+
+event {
+       name = myevent;
+       fields := struct { uint8_t len; uint32_t blah[len]; };
+};
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-string/dummystream b/tests/1.8/regression/stream/fail/cross-packet-event-string/dummystream
new file mode 100644 (file)
index 0000000..5af4b99
Binary files /dev/null and b/tests/1.8/regression/stream/fail/cross-packet-event-string/dummystream differ
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-string/metadata b/tests/1.8/regression/stream/fail/cross-packet-event-string/metadata
new file mode 100644 (file)
index 0000000..67cba62
--- /dev/null
@@ -0,0 +1,27 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 8; signed = false; base = hex; } := uint32_t;
+typealias integer { size = 64; align = 8; signed = false; base = hex; } := uint64_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+stream {
+       packet.context := struct {
+               uint32_t packet_size;
+               uint32_t content_size;
+       };
+};
+
+event {
+       name = myevent;
+       fields := struct { string f; };
+};
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-struct/dummystream b/tests/1.8/regression/stream/fail/cross-packet-event-struct/dummystream
new file mode 100644 (file)
index 0000000..a143071
Binary files /dev/null and b/tests/1.8/regression/stream/fail/cross-packet-event-struct/dummystream differ
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-struct/metadata b/tests/1.8/regression/stream/fail/cross-packet-event-struct/metadata
new file mode 100644 (file)
index 0000000..ded9fb1
--- /dev/null
@@ -0,0 +1,27 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 8; signed = false; base = hex; } := uint32_t;
+typealias integer { size = 64; align = 8; signed = false; base = hex; } := uint64_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+stream {
+       packet.context := struct {
+               uint32_t packet_size;
+               uint32_t content_size;
+       };
+};
+
+event {
+       name = myevent;
+       fields := struct { struct { uint64_t f; } s; };
+};
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-variant-selected-element/dummystream b/tests/1.8/regression/stream/fail/cross-packet-event-variant-selected-element/dummystream
new file mode 100644 (file)
index 0000000..59f0393
Binary files /dev/null and b/tests/1.8/regression/stream/fail/cross-packet-event-variant-selected-element/dummystream differ
diff --git a/tests/1.8/regression/stream/fail/cross-packet-event-variant-selected-element/metadata b/tests/1.8/regression/stream/fail/cross-packet-event-variant-selected-element/metadata
new file mode 100644 (file)
index 0000000..db3ff37
--- /dev/null
@@ -0,0 +1,34 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 8; signed = false; base = hex; } := uint32_t;
+typealias integer { size = 64; align = 8; signed = false; base = hex; } := uint64_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+stream {
+       packet.context := struct {
+               uint32_t packet_size;
+               uint32_t content_size;
+       };
+};
+
+event {
+       name = myevent;
+       fields := struct {
+               enum : uint8_t { sel0 = 0, sel1 = 1, sel2 = 2, } mytag;
+               variant <mytag> {
+                       uint8_t sel0[300];
+                       uint8_t sel1[200];
+                       uint8_t sel2[7];
+               } v;
+       };
+};
diff --git a/tests/1.8/regression/stream/fail/fail1/dummystream b/tests/1.8/regression/stream/fail/fail1/dummystream
new file mode 100644 (file)
index 0000000..2601067
Binary files /dev/null and b/tests/1.8/regression/stream/fail/fail1/dummystream differ
diff --git a/tests/1.8/regression/stream/fail/fail1/metadata b/tests/1.8/regression/stream/fail/fail1/metadata
new file mode 100644 (file)
index 0000000..28185f5
--- /dev/null
@@ -0,0 +1,49 @@
+/* CTF 1.8
+ *
+ * Architecture with 32-bit pointers, 32-bit integers, 32-bit longs.
+ */
+
+typealias integer { size = 1; align = 1; signed = false; } := uint1_t;
+typealias integer { size = 8; align = 8; signed = false; } := uint8_t;
+typealias integer { size = 63; align = 1; signed = false; } := timestamp_t;
+
+typealias integer { size = 32; align = 32; signed = false; base = 10; } := uint32_t;
+typealias integer { size = 32; align = 32; signed = false; } := void *;
+
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+               uint32_t stream_id;
+       };
+};
+
+stream {
+       event.header := struct {
+               uint1_t id;
+               timestamp_t timestamp;
+       };
+       event.context := struct {
+               uint32_t thread_id;
+               uint32_t event_count;
+       };                      
+};
+
+event {
+       name = func_enter;
+       id = 0;
+       fields := struct {
+               void *func_called;
+               void *called_from;
+       };
+};
+
+event {
+       name = func_exit;
+       id = 1;
+};
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-alignment-empty-struct/dummystream b/tests/1.8/regression/stream/fail/out-of-bound-alignment-empty-struct/dummystream
new file mode 100644 (file)
index 0000000..5ea947a
--- /dev/null
@@ -0,0 +1 @@
\1füÁ*d"Ðlî\11à\8c\bË\a׳¥dB
\ No newline at end of file
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-alignment-empty-struct/metadata b/tests/1.8/regression/stream/fail/out-of-bound-alignment-empty-struct/metadata
new file mode 100644 (file)
index 0000000..9236148
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 512; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = evname;
+       fields := struct { struct {} align(512) s; };
+};
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-alignment-integer/dummystream b/tests/1.8/regression/stream/fail/out-of-bound-alignment-integer/dummystream
new file mode 100644 (file)
index 0000000..5ea947a
--- /dev/null
@@ -0,0 +1 @@
\1füÁ*d"Ðlî\11à\8c\bË\a׳¥dB
\ No newline at end of file
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-alignment-integer/metadata b/tests/1.8/regression/stream/fail/out-of-bound-alignment-integer/metadata
new file mode 100644 (file)
index 0000000..edbd967
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 512; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = evname;
+       fields := struct { uint32_t blah; };
+};
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-array-of-integers/dummystream b/tests/1.8/regression/stream/fail/out-of-bound-array-of-integers/dummystream
new file mode 100644 (file)
index 0000000..26e2fd7
--- /dev/null
@@ -0,0 +1 @@
\1füÁ*d"Ðlî\11à\8c\bË\a׳¥dBBBB
\ No newline at end of file
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-array-of-integers/metadata b/tests/1.8/regression/stream/fail/out-of-bound-array-of-integers/metadata
new file mode 100644 (file)
index 0000000..d55d38c
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = evname;
+       fields := struct { uint32_t blah[2]; };
+};
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-float/dummystream b/tests/1.8/regression/stream/fail/out-of-bound-float/dummystream
new file mode 100644 (file)
index 0000000..5ea947a
--- /dev/null
@@ -0,0 +1 @@
\1füÁ*d"Ðlî\11à\8c\bË\a׳¥dB
\ No newline at end of file
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-float/metadata b/tests/1.8/regression/stream/fail/out-of-bound-float/metadata
new file mode 100644 (file)
index 0000000..4af47a3
--- /dev/null
@@ -0,0 +1,20 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+typealias floating_point { exp_dig = 8; mant_dig = 24; align = 32; } := float;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = evname;
+       fields := struct { float blah; };
+};
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-integer/dummystream b/tests/1.8/regression/stream/fail/out-of-bound-integer/dummystream
new file mode 100644 (file)
index 0000000..5ea947a
--- /dev/null
@@ -0,0 +1 @@
\1füÁ*d"Ðlî\11à\8c\bË\a׳¥dB
\ No newline at end of file
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-integer/metadata b/tests/1.8/regression/stream/fail/out-of-bound-integer/metadata
new file mode 100644 (file)
index 0000000..8daa6c7
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = evname;
+       fields := struct { uint32_t blah; };
+};
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-len-of-sequence/dummystream b/tests/1.8/regression/stream/fail/out-of-bound-len-of-sequence/dummystream
new file mode 100644 (file)
index 0000000..5ea947a
--- /dev/null
@@ -0,0 +1 @@
\1füÁ*d"Ðlî\11à\8c\bË\a׳¥dB
\ No newline at end of file
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-len-of-sequence/metadata b/tests/1.8/regression/stream/fail/out-of-bound-len-of-sequence/metadata
new file mode 100644 (file)
index 0000000..d57884b
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = evname;
+       fields := struct { uint32_t len; uint32_t blah[len]; };
+};
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-sequence-between-elements/dummystream b/tests/1.8/regression/stream/fail/out-of-bound-sequence-between-elements/dummystream
new file mode 100644 (file)
index 0000000..e0a31e9
Binary files /dev/null and b/tests/1.8/regression/stream/fail/out-of-bound-sequence-between-elements/dummystream differ
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-sequence-between-elements/metadata b/tests/1.8/regression/stream/fail/out-of-bound-sequence-between-elements/metadata
new file mode 100644 (file)
index 0000000..d57884b
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = evname;
+       fields := struct { uint32_t len; uint32_t blah[len]; };
+};
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-sequence-start/dummystream b/tests/1.8/regression/stream/fail/out-of-bound-sequence-start/dummystream
new file mode 100644 (file)
index 0000000..08b300c
Binary files /dev/null and b/tests/1.8/regression/stream/fail/out-of-bound-sequence-start/dummystream differ
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-sequence-start/metadata b/tests/1.8/regression/stream/fail/out-of-bound-sequence-start/metadata
new file mode 100644 (file)
index 0000000..d57884b
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = evname;
+       fields := struct { uint32_t len; uint32_t blah[len]; };
+};
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-sequence-within-element/dummystream b/tests/1.8/regression/stream/fail/out-of-bound-sequence-within-element/dummystream
new file mode 100644 (file)
index 0000000..e39bee1
Binary files /dev/null and b/tests/1.8/regression/stream/fail/out-of-bound-sequence-within-element/dummystream differ
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-sequence-within-element/metadata b/tests/1.8/regression/stream/fail/out-of-bound-sequence-within-element/metadata
new file mode 100644 (file)
index 0000000..d57884b
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = evname;
+       fields := struct { uint32_t len; uint32_t blah[len]; };
+};
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-string/dummystream b/tests/1.8/regression/stream/fail/out-of-bound-string/dummystream
new file mode 100644 (file)
index 0000000..5ea947a
--- /dev/null
@@ -0,0 +1 @@
\1füÁ*d"Ðlî\11à\8c\bË\a׳¥dB
\ No newline at end of file
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-string/metadata b/tests/1.8/regression/stream/fail/out-of-bound-string/metadata
new file mode 100644 (file)
index 0000000..1ec76fd
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = evname;
+       fields := struct { string blah; };
+};
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-struct/dummystream-fail b/tests/1.8/regression/stream/fail/out-of-bound-struct/dummystream-fail
new file mode 100644 (file)
index 0000000..fc7e07c
--- /dev/null
@@ -0,0 +1 @@
\1füÁ*d
\ No newline at end of file
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-struct/metadata b/tests/1.8/regression/stream/fail/out-of-bound-struct/metadata
new file mode 100644 (file)
index 0000000..b1310ec
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = string;
+       fields := struct { struct { uint32_t blah; } s; };
+};
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-variant-selected-element/dummystream b/tests/1.8/regression/stream/fail/out-of-bound-variant-selected-element/dummystream
new file mode 100644 (file)
index 0000000..0fd0f96
Binary files /dev/null and b/tests/1.8/regression/stream/fail/out-of-bound-variant-selected-element/dummystream differ
diff --git a/tests/1.8/regression/stream/fail/out-of-bound-variant-selected-element/metadata b/tests/1.8/regression/stream/fail/out-of-bound-variant-selected-element/metadata
new file mode 100644 (file)
index 0000000..94afd5d
--- /dev/null
@@ -0,0 +1,26 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = hex; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = myevent;
+       fields := struct {
+               enum : uint8_t { sel0 = 0, sel1 = 1, sel2 = 2, } mytag;
+               variant <mytag> {
+                       uint8_t sel0[300];
+                       uint8_t sel1[200];
+                       uint8_t sel2;
+               } v;
+       };
+};
diff --git a/tests/1.8/regression/stream/fail/smalltrace/dummystream-fail b/tests/1.8/regression/stream/fail/smalltrace/dummystream-fail
new file mode 100644 (file)
index 0000000..fc7e07c
--- /dev/null
@@ -0,0 +1 @@
\1füÁ*d
\ No newline at end of file
diff --git a/tests/1.8/regression/stream/fail/smalltrace/metadata b/tests/1.8/regression/stream/fail/smalltrace/metadata
new file mode 100644 (file)
index 0000000..86f8e0a
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = string;
+       fields := struct { string str; };
+};
diff --git a/tests/1.8/regression/stream/pass/2-packets-no-content-size/dummystream b/tests/1.8/regression/stream/pass/2-packets-no-content-size/dummystream
new file mode 100644 (file)
index 0000000..12e6232
Binary files /dev/null and b/tests/1.8/regression/stream/pass/2-packets-no-content-size/dummystream differ
diff --git a/tests/1.8/regression/stream/pass/2-packets-no-content-size/metadata b/tests/1.8/regression/stream/pass/2-packets-no-content-size/metadata
new file mode 100644 (file)
index 0000000..724e550
--- /dev/null
@@ -0,0 +1,25 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 8; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+stream {
+       packet.context := struct {
+               uint32_t packet_size;
+       };
+};
+
+event {
+       name = myevent;
+       fields := struct { uint32_t f; };
+};
diff --git a/tests/1.8/regression/stream/pass/2-packets/dummystream b/tests/1.8/regression/stream/pass/2-packets/dummystream
new file mode 100644 (file)
index 0000000..cc9e627
Binary files /dev/null and b/tests/1.8/regression/stream/pass/2-packets/dummystream differ
diff --git a/tests/1.8/regression/stream/pass/2-packets/metadata b/tests/1.8/regression/stream/pass/2-packets/metadata
new file mode 100644 (file)
index 0000000..7428eed
--- /dev/null
@@ -0,0 +1,26 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 8; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+stream {
+       packet.context := struct {
+               uint32_t packet_size;
+               uint32_t content_size;
+       };
+};
+
+event {
+       name = myevent;
+       fields := struct { uint32_t f; };
+};
diff --git a/tests/1.8/regression/stream/pass/empty-stream-no-header/emptystream b/tests/1.8/regression/stream/pass/empty-stream-no-header/emptystream
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/tests/1.8/regression/stream/pass/empty-stream-no-header/metadata b/tests/1.8/regression/stream/pass/empty-stream-no-header/metadata
new file mode 100644 (file)
index 0000000..d4a73a3
--- /dev/null
@@ -0,0 +1,15 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+};
+
+event {
+       name = string;
+       fields := struct { string str; };
+};
diff --git a/tests/1.8/regression/stream/pass/empty-stream/emptystream b/tests/1.8/regression/stream/pass/empty-stream/emptystream
new file mode 100644 (file)
index 0000000..8cc80f6
--- /dev/null
@@ -0,0 +1 @@
\1füÁ*d"Ðlî\11à\8c\bË\a׳¥d
\ No newline at end of file
diff --git a/tests/1.8/regression/stream/pass/empty-stream/metadata b/tests/1.8/regression/stream/pass/empty-stream/metadata
new file mode 100644 (file)
index 0000000..86f8e0a
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = string;
+       fields := struct { string str; };
+};
diff --git a/tests/1.8/regression/stream/pass/empty-struct/dummystream b/tests/1.8/regression/stream/pass/empty-struct/dummystream
new file mode 100644 (file)
index 0000000..5ea947a
--- /dev/null
@@ -0,0 +1 @@
\1füÁ*d"Ðlî\11à\8c\bË\a׳¥dB
\ No newline at end of file
diff --git a/tests/1.8/regression/stream/pass/empty-struct/metadata b/tests/1.8/regression/stream/pass/empty-struct/metadata
new file mode 100644 (file)
index 0000000..c4ae8a4
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 512; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = evname;
+       fields := struct { struct {} s; };
+};
diff --git a/tests/1.8/regression/stream/pass/in-bound-alignment-2-bit-empty-struct/dummystream b/tests/1.8/regression/stream/pass/in-bound-alignment-2-bit-empty-struct/dummystream
new file mode 100644 (file)
index 0000000..8cc80f6
--- /dev/null
@@ -0,0 +1 @@
\1füÁ*d"Ðlî\11à\8c\bË\a׳¥d
\ No newline at end of file
diff --git a/tests/1.8/regression/stream/pass/in-bound-alignment-2-bit-empty-struct/metadata b/tests/1.8/regression/stream/pass/in-bound-alignment-2-bit-empty-struct/metadata
new file mode 100644 (file)
index 0000000..1eeb569
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 512; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = evname;
+       fields := struct { struct {} align(2) s; };
+};
diff --git a/tests/1.8/regression/stream/pass/in-bound-empty-struct/dummystream b/tests/1.8/regression/stream/pass/in-bound-empty-struct/dummystream
new file mode 100644 (file)
index 0000000..8cc80f6
--- /dev/null
@@ -0,0 +1 @@
\1füÁ*d"Ðlî\11à\8c\bË\a׳¥d
\ No newline at end of file
diff --git a/tests/1.8/regression/stream/pass/in-bound-empty-struct/metadata b/tests/1.8/regression/stream/pass/in-bound-empty-struct/metadata
new file mode 100644 (file)
index 0000000..c4ae8a4
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 512; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = evname;
+       fields := struct { struct {} s; };
+};
diff --git a/tests/1.8/regression/stream/pass/in-bound-variant-selected-element/dummystream b/tests/1.8/regression/stream/pass/in-bound-variant-selected-element/dummystream
new file mode 100644 (file)
index 0000000..520c0e4
--- /dev/null
@@ -0,0 +1 @@
\1füÁ*d"Ðlî\11à\8c\bË\a׳¥d\ 2B
\ No newline at end of file
diff --git a/tests/1.8/regression/stream/pass/in-bound-variant-selected-element/metadata b/tests/1.8/regression/stream/pass/in-bound-variant-selected-element/metadata
new file mode 100644 (file)
index 0000000..94afd5d
--- /dev/null
@@ -0,0 +1,26 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = hex; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = myevent;
+       fields := struct {
+               enum : uint8_t { sel0 = 0, sel1 = 1, sel2 = 2, } mytag;
+               variant <mytag> {
+                       uint8_t sel0[300];
+                       uint8_t sel1[200];
+                       uint8_t sel2;
+               } v;
+       };
+};
diff --git a/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_0 b/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_0
new file mode 100755 (executable)
index 0000000..528aa6c
Binary files /dev/null and b/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_0 differ
diff --git a/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_1 b/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_1
new file mode 100755 (executable)
index 0000000..41ac45a
Binary files /dev/null and b/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_1 differ
diff --git a/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_2 b/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_2
new file mode 100755 (executable)
index 0000000..b6fc7f7
Binary files /dev/null and b/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_2 differ
diff --git a/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_3 b/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_3
new file mode 100755 (executable)
index 0000000..b79f6cb
Binary files /dev/null and b/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_3 differ
diff --git a/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_4 b/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_4
new file mode 100755 (executable)
index 0000000..3ff7ea5
Binary files /dev/null and b/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_4 differ
diff --git a/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_5 b/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_5
new file mode 100755 (executable)
index 0000000..ed41169
Binary files /dev/null and b/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_5 differ
diff --git a/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_6 b/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_6
new file mode 100755 (executable)
index 0000000..89502f0
Binary files /dev/null and b/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_6 differ
diff --git a/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_7 b/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_7
new file mode 100755 (executable)
index 0000000..1199fac
Binary files /dev/null and b/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/channel0_7 differ
diff --git a/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/metadata b/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/metadata
new file mode 100755 (executable)
index 0000000..de5959a
Binary files /dev/null and b/tests/1.8/regression/stream/pass/lttng-modules-2.0-pre5/metadata differ
diff --git a/tests/1.8/regression/stream/pass/smalltrace/dummystream b/tests/1.8/regression/stream/pass/smalltrace/dummystream
new file mode 100644 (file)
index 0000000..469cb9a
Binary files /dev/null and b/tests/1.8/regression/stream/pass/smalltrace/dummystream differ
diff --git a/tests/1.8/regression/stream/pass/smalltrace/metadata b/tests/1.8/regression/stream/pass/smalltrace/metadata
new file mode 100644 (file)
index 0000000..86f8e0a
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = string;
+       fields := struct { string str; };
+};
diff --git a/tests/1.8/regression/stream/pass/succeed1/dummystream b/tests/1.8/regression/stream/pass/succeed1/dummystream
new file mode 100644 (file)
index 0000000..53d735e
Binary files /dev/null and b/tests/1.8/regression/stream/pass/succeed1/dummystream differ
diff --git a/tests/1.8/regression/stream/pass/succeed1/metadata b/tests/1.8/regression/stream/pass/succeed1/metadata
new file mode 100644 (file)
index 0000000..f88ffb0
--- /dev/null
@@ -0,0 +1,26 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+stream {
+       packet.context := struct {
+               uint32_t content_size;
+               uint32_t packet_size;
+       };
+};
+
+event {
+       name = string;
+       fields := struct { string str; };
+};
diff --git a/tests/1.8/regression/stream/pass/succeed2/dummystream b/tests/1.8/regression/stream/pass/succeed2/dummystream
new file mode 100644 (file)
index 0000000..53d735e
Binary files /dev/null and b/tests/1.8/regression/stream/pass/succeed2/dummystream differ
diff --git a/tests/1.8/regression/stream/pass/succeed2/metadata b/tests/1.8/regression/stream/pass/succeed2/metadata
new file mode 100644 (file)
index 0000000..10a288f
--- /dev/null
@@ -0,0 +1,26 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+stream {
+       packet.context := struct {
+               uint32_t content_size;
+               uint32_t packet_size;
+       };
+};
+
+event {
+       name = string;
+       fields := struct { string str; };
+};
diff --git a/tests/1.8/regression/stream/pass/test/channel0_0 b/tests/1.8/regression/stream/pass/test/channel0_0
new file mode 100755 (executable)
index 0000000..528aa6c
Binary files /dev/null and b/tests/1.8/regression/stream/pass/test/channel0_0 differ
diff --git a/tests/1.8/regression/stream/pass/test/channel0_1 b/tests/1.8/regression/stream/pass/test/channel0_1
new file mode 100755 (executable)
index 0000000..41ac45a
Binary files /dev/null and b/tests/1.8/regression/stream/pass/test/channel0_1 differ
diff --git a/tests/1.8/regression/stream/pass/test/channel0_2 b/tests/1.8/regression/stream/pass/test/channel0_2
new file mode 100755 (executable)
index 0000000..b6fc7f7
Binary files /dev/null and b/tests/1.8/regression/stream/pass/test/channel0_2 differ
diff --git a/tests/1.8/regression/stream/pass/test/channel0_3 b/tests/1.8/regression/stream/pass/test/channel0_3
new file mode 100755 (executable)
index 0000000..b79f6cb
Binary files /dev/null and b/tests/1.8/regression/stream/pass/test/channel0_3 differ
diff --git a/tests/1.8/regression/stream/pass/test/channel0_4 b/tests/1.8/regression/stream/pass/test/channel0_4
new file mode 100755 (executable)
index 0000000..3ff7ea5
Binary files /dev/null and b/tests/1.8/regression/stream/pass/test/channel0_4 differ
diff --git a/tests/1.8/regression/stream/pass/test/channel0_5 b/tests/1.8/regression/stream/pass/test/channel0_5
new file mode 100755 (executable)
index 0000000..ed41169
Binary files /dev/null and b/tests/1.8/regression/stream/pass/test/channel0_5 differ
diff --git a/tests/1.8/regression/stream/pass/test/channel0_6 b/tests/1.8/regression/stream/pass/test/channel0_6
new file mode 100755 (executable)
index 0000000..89502f0
Binary files /dev/null and b/tests/1.8/regression/stream/pass/test/channel0_6 differ
diff --git a/tests/1.8/regression/stream/pass/test/channel0_7 b/tests/1.8/regression/stream/pass/test/channel0_7
new file mode 100755 (executable)
index 0000000..1199fac
Binary files /dev/null and b/tests/1.8/regression/stream/pass/test/channel0_7 differ
diff --git a/tests/1.8/regression/stream/pass/test/metadata b/tests/1.8/regression/stream/pass/test/metadata
new file mode 100755 (executable)
index 0000000..de5959a
Binary files /dev/null and b/tests/1.8/regression/stream/pass/test/metadata differ
diff --git a/tests/1.8/regression/stream/pass/wk-heartbeat-u/metadata b/tests/1.8/regression/stream/pass/wk-heartbeat-u/metadata
new file mode 100755 (executable)
index 0000000..e35f463
Binary files /dev/null and b/tests/1.8/regression/stream/pass/wk-heartbeat-u/metadata differ
diff --git a/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_0 b/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_0
new file mode 100755 (executable)
index 0000000..3af2cdc
Binary files /dev/null and b/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_0 differ
diff --git a/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_1 b/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_1
new file mode 100755 (executable)
index 0000000..7b74c03
Binary files /dev/null and b/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_1 differ
diff --git a/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_2 b/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_2
new file mode 100755 (executable)
index 0000000..13a69fc
Binary files /dev/null and b/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_2 differ
diff --git a/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_3 b/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_3
new file mode 100755 (executable)
index 0000000..1cdde72
Binary files /dev/null and b/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_3 differ
diff --git a/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_4 b/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_4
new file mode 100755 (executable)
index 0000000..c136034
Binary files /dev/null and b/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_4 differ
diff --git a/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_5 b/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_5
new file mode 100755 (executable)
index 0000000..a0a5881
Binary files /dev/null and b/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_5 differ
diff --git a/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_6 b/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_6
new file mode 100755 (executable)
index 0000000..b1c8520
Binary files /dev/null and b/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_6 differ
diff --git a/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_7 b/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_7
new file mode 100755 (executable)
index 0000000..05f7393
Binary files /dev/null and b/tests/1.8/regression/stream/pass/wk-heartbeat-u/u_7 differ
diff --git a/tests/1.8/regression/stream/run.sh b/tests/1.8/regression/stream/run.sh
new file mode 100755 (executable)
index 0000000..78e3be0
--- /dev/null
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+for dir in */; do
+       echo "Running ${dir} tests"
+       cd ${dir}
+       ./run.sh
+       cd ..
+done
index 1ffd52a464a73d0af33cd2e64435e9bb22df405f..78e3be05961cca3f2fa4d39080b7fdf257fa6120 100755 (executable)
@@ -1,11 +1,8 @@
 #!/bin/sh
 
-echo "Running expected pass tests"
-cd pass
-./run.sh
-cd ..
-
-echo "Running expected failure tests"
-cd fail
-./run.sh
-cd ,,
+for dir in */; do
+       echo "Running ${dir} tests"
+       cd ${dir}
+       ./run.sh
+       cd ..
+done
diff --git a/tests/1.8/stress/run.sh b/tests/1.8/stress/run.sh
new file mode 100755 (executable)
index 0000000..78e3be0
--- /dev/null
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+for dir in */; do
+       echo "Running ${dir} tests"
+       cd ${dir}
+       ./run.sh
+       cd ..
+done
diff --git a/tests/1.8/stress/stream/fail/out-of-bound-large-sequence-length/dummystream b/tests/1.8/stress/stream/fail/out-of-bound-large-sequence-length/dummystream
new file mode 100644 (file)
index 0000000..26e2fd7
--- /dev/null
@@ -0,0 +1 @@
\1füÁ*d"Ðlî\11à\8c\bË\a׳¥dBBBB
\ No newline at end of file
diff --git a/tests/1.8/stress/stream/fail/out-of-bound-large-sequence-length/metadata b/tests/1.8/stress/stream/fail/out-of-bound-large-sequence-length/metadata
new file mode 100644 (file)
index 0000000..d57884b
--- /dev/null
@@ -0,0 +1,19 @@
+/* CTF 1.8 */
+typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t;
+typealias integer { size = 32; align = 32; signed = false; base = hex; } := uint32_t;
+
+trace {
+       major = 0;
+       minor = 1;
+       uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564";
+       byte_order = le;
+       packet.header := struct {
+               uint32_t magic;
+               uint8_t  uuid[16];
+       };
+};
+
+event {
+       name = evname;
+       fields := struct { uint32_t len; uint32_t blah[len]; };
+};
index 1ffd52a464a73d0af33cd2e64435e9bb22df405f..4cec2e1af6469053dc811673316f7275423f30c5 100755 (executable)
@@ -8,4 +8,4 @@ cd ..
 echo "Running expected failure tests"
 cd fail
 ./run.sh
-cd ,,
+cd ..
This page took 0.137042 seconds and 4 git commands to generate.