xref: /aosp_15_r20/external/nanopb-c/tests/regression/issue_547/SConscript (revision c8d645cafcee3f91213d30caa0fe303887010b9b)
1*c8d645caSAndroid Build Coastguard Worker# Regression test for issue #547:
2*c8d645caSAndroid Build Coastguard Worker# Buffer overflow when encoding bytes with size set to 65535
3*c8d645caSAndroid Build Coastguard Worker
4*c8d645caSAndroid Build Coastguard WorkerImport("env")
5*c8d645caSAndroid Build Coastguard Worker
6*c8d645caSAndroid Build Coastguard Workerenv.NanopbProto("test.proto")
7*c8d645caSAndroid Build Coastguard Worker
8*c8d645caSAndroid Build Coastguard Worker# Define the compilation options
9*c8d645caSAndroid Build Coastguard Workeropts = env.Clone()
10*c8d645caSAndroid Build Coastguard Workeropts.Append(CPPDEFINES = {'PB_FIELD_32BIT': 1})
11*c8d645caSAndroid Build Coastguard Worker
12*c8d645caSAndroid Build Coastguard Worker# Build new version of core
13*c8d645caSAndroid Build Coastguard Workerstrict = opts.Clone()
14*c8d645caSAndroid Build Coastguard Workerstrict.Append(CFLAGS = strict['CORECFLAGS'])
15*c8d645caSAndroid Build Coastguard Workerstrict.Object("pb_encode_fields32.o", "$NANOPB/pb_encode.c")
16*c8d645caSAndroid Build Coastguard Workerstrict.Object("pb_common_fields32.o", "$NANOPB/pb_common.c")
17*c8d645caSAndroid Build Coastguard Worker
18*c8d645caSAndroid Build Coastguard Worker# Build and run test
19*c8d645caSAndroid Build Coastguard Workertest = opts.Program(["test.c", "test.pb.c", "pb_encode_fields32.o", "pb_common_fields32.o"])
20*c8d645caSAndroid Build Coastguard Worker
21*c8d645caSAndroid Build Coastguard Workerenv.RunTest(test)
22