Corrected SubscribeCOV decoding for cancellation request. Updated COV Code::Blocks project.

This commit is contained in:
skarg
2007-06-06 21:25:18 +00:00
parent e77ab395a3
commit 5c0d0d0fe8
2 changed files with 52 additions and 61 deletions
+6 -3
View File
@@ -78,7 +78,7 @@ static int notify_encode_adpu(uint8_t * apdu, BACNET_COV_DATA * data)
len = encode_opening_tag(&apdu[apdu_len], 4); len = encode_opening_tag(&apdu[apdu_len], 4);
apdu_len += len; apdu_len += len;
/* the first value includes a pointer to the next value, etc */ /* the first value includes a pointer to the next value, etc */
/* FIXME: for small implementations, we might try a partial /* FIXME: for small implementations, we might try a partial
approach like the rpm.c where the values are encoded with approach like the rpm.c where the values are encoded with
a separate function */ a separate function */
value = &data->listOfValues; value = &data->listOfValues;
@@ -367,7 +367,7 @@ int cov_subscribe_decode_service_request(uint8_t * apdu,
} else } else
return -1; return -1;
/* optional parameters - if missing, means cancellation */ /* optional parameters - if missing, means cancellation */
if (len > apdu_len) { if (len < apdu_len) {
/* tag 2 - issueConfirmedNotifications - optional */ /* tag 2 - issueConfirmedNotifications - optional */
if (decode_is_context_tag(&apdu[len], 2)) { if (decode_is_context_tag(&apdu[len], 2)) {
data->cancellationRequest = false; data->cancellationRequest = false;
@@ -840,7 +840,10 @@ void testCOVSubscribeData(Test * pTest,
test_data->monitoredObjectIdentifier.instance == test_data->monitoredObjectIdentifier.instance ==
data->monitoredObjectIdentifier.instance); data->monitoredObjectIdentifier.instance);
ct_test(pTest, ct_test(pTest,
test_data->cancellationRequest == data->cancellationRequest); test_data->cancellationRequest == data->cancellationRequest);
if (test_data->cancellationRequest != data->cancellationRequest) {
printf("cancellation request failed!\n");
}
if (!test_data->cancellationRequest) { if (!test_data->cancellationRequest) {
ct_test(pTest, ct_test(pTest,
test_data->issueConfirmedNotifications == test_data->issueConfirmedNotifications ==
+46 -58
View File
@@ -1,80 +1,68 @@
<?xml version="1.0"?> <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE CodeBlocks_project_file>
<CodeBlocks_project_file> <CodeBlocks_project_file>
<FileVersion major="1" minor="1"/> <FileVersion major="1" minor="6" />
<Project> <Project>
<Option title="COV Unit Test"/> <Option title="COV Unit Test" />
<Option makefile="Makefile"/> <Option pch_mode="0" />
<Option makefile_is_custom="0"/> <Option compiler="gcc" />
<Option compiler="0"/>
<Build> <Build>
<Target title="default"> <Target title="default">
<Option output="C:\code\bacnet-stack\cov.exe"/> <Option output="C:\code\bacnet-stack\cov.exe" prefix_auto="0" extension_auto="0" />
<Option working_dir="."/> <Option type="1" />
<Option object_output=".objs"/> <Option compiler="gcc" />
<Option deps_output=".deps"/> <Option projectResourceIncludeDirsRelation="1" />
<Option type="1"/>
<Option compiler="0"/>
<Option projectResourceIncludeDirsRelation="1"/>
</Target> </Target>
</Build> </Build>
<VirtualTargets>
<Add alias="All" targets="default;" />
</VirtualTargets>
<Compiler> <Compiler>
<Add option="-DTEST"/> <Add option="-Wall" />
<Add option="-DTEST_WHOIS"/> <Add option="-g" />
<Add option="-DBACDL_TEST" />
<Add option="-DBIG_ENDIAN=0" />
<Add option="-DTEST" />
<Add option="-DTEST_COV" />
<Add directory="test" />
<Add directory="demo\object" />
<Add directory="." />
</Compiler> </Compiler>
<Unit filename="bacapp.c"> <Unit filename="bacapp.c">
<Option compilerVar="CC"/> <Option compilerVar="CC" />
<Option target="default"/>
</Unit>
<Unit filename="bacapp.h">
<Option compilerVar=""/>
<Option compile="0"/>
<Option link="0"/>
<Option target="default"/>
</Unit> </Unit>
<Unit filename="bacapp.h" />
<Unit filename="bacdcode.c"> <Unit filename="bacdcode.c">
<Option compilerVar="CC"/> <Option compilerVar="CC" />
<Option target="default"/>
</Unit>
<Unit filename="bacdcode.h">
<Option compilerVar=""/>
<Option compile="0"/>
<Option link="0"/>
<Option target="default"/>
</Unit>
<Unit filename="bacdef.h">
<Option compilerVar=""/>
<Option compile="0"/>
<Option link="0"/>
<Option target="default"/>
</Unit>
<Unit filename="bacenum.h">
<Option compilerVar=""/>
<Option compile="0"/>
<Option link="0"/>
<Option target="default"/>
</Unit> </Unit>
<Unit filename="bacdcode.h" />
<Unit filename="bacdef.h" />
<Unit filename="bacenum.h" />
<Unit filename="bacstr.c"> <Unit filename="bacstr.c">
<Option compilerVar="CC"/> <Option compilerVar="CC" />
<Option target="default"/>
</Unit> </Unit>
<Unit filename="bigend.c"> <Unit filename="bacstr.h" />
<Option compilerVar="CC"/> <Unit filename="bactext.c">
<Option target="default"/> <Option compilerVar="CC" />
</Unit> </Unit>
<Unit filename="bactext.h" />
<Unit filename="cov.c"> <Unit filename="cov.c">
<Option compilerVar="CC"/> <Option compilerVar="CC" />
<Option target="default"/>
</Unit> </Unit>
<Unit filename="cov.h"> <Unit filename="cov.h" />
<Option compilerVar=""/> <Unit filename="datetime.c">
<Option compile="0"/> <Option compilerVar="CC" />
<Option link="0"/>
<Option target="default"/>
</Unit> </Unit>
<Unit filename="datetime.h" />
<Unit filename="indtext.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="indtext.h" />
<Unit filename="test\ctest.c"> <Unit filename="test\ctest.c">
<Option compilerVar="CC"/> <Option compilerVar="CC" />
<Option target="default"/>
</Unit> </Unit>
<Unit filename="test\ctest.h" />
<Extensions>
<code_completion />
</Extensions>
</Project> </Project>
</CodeBlocks_project_file> </CodeBlocks_project_file>