Skip to content

Commit fdae1c3

Browse files
committed
fdo.command:execute to have null body
Signed-off-by: Raihan M <muhamedraihan@gmail.com>
1 parent 3ee59a7 commit fdae1c3

3 files changed

Lines changed: 19 additions & 5 deletions

File tree

protocol/src/main/java/org/fidoalliance/fdo/protocol/Mapper.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -135,6 +135,13 @@ public byte[] writeAsCborByteString(Object value) throws IOException {
135135
return cborMapper.writeValueAsBytes(writeValue(value));
136136
}
137137

138+
/**
139+
* @return A CBOR Null value.
140+
*/
141+
public byte[] cborNull() {
142+
return new byte[]{(byte) 0xf6};
143+
}
144+
138145
/**
139146
* Writes an Object as a yaml encoded string.
140147
*

protocol/src/main/java/org/fidoalliance/fdo/protocol/db/FdoSimCommandOwnerModule.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,7 @@
1616
import org.fidoalliance.fdo.protocol.message.ServiceInfoDocument;
1717
import org.fidoalliance.fdo.protocol.message.ServiceInfoKeyValuePair;
1818
import org.fidoalliance.fdo.protocol.message.ServiceInfoModuleState;
19-
import org.fidoalliance.fdo.protocol.message.ServiceInfoQueue;
2019
import org.fidoalliance.fdo.protocol.serviceinfo.DevMod;
21-
import org.fidoalliance.fdo.protocol.serviceinfo.FdoSys;
2220

2321
public class FdoSimCommandOwnerModule implements ServiceInfoModule {
2422

@@ -272,7 +270,7 @@ protected void load(ServiceInfoModuleState state, FdoSysModuleExtra extra)
272270

273271
kv = new ServiceInfoKeyValuePair();
274272
kv.setKeyName(EXECUTE);
275-
kv.setValue(Mapper.INSTANCE.writeValue(commandArgs));
273+
kv.setValue(Mapper.INSTANCE.cborNull());
276274
state.getGlobalState().getQueue().add(kv);
277275

278276

protocol/src/test/java/org/fidoalliance/fdo/protocol/SerializationTest.java

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,19 +3,20 @@
33
import java.io.IOException;
44
import java.util.Arrays;
55

6+
import com.fasterxml.jackson.databind.JsonNode;
67
import org.apache.commons.codec.DecoderException;
78
import org.fidoalliance.fdo.protocol.message.AnyType;
89
import org.fidoalliance.fdo.protocol.message.Hash;
910
import org.fidoalliance.fdo.protocol.message.HashType;
1011
import org.fidoalliance.fdo.protocol.message.OwnerPublicKey;
1112
import org.fidoalliance.fdo.protocol.message.PublicKeyEncoding;
1213
import org.fidoalliance.fdo.protocol.message.PublicKeyType;
13-
import static org.junit.jupiter.api.Assertions.assertArrayEquals;
14-
import static org.junit.jupiter.api.Assertions.assertTrue;
1514
import org.junit.jupiter.api.Test;
1615

1716
import com.fasterxml.jackson.dataformat.cbor.CBORConstants;
1817

18+
import static org.junit.jupiter.api.Assertions.*;
19+
1920
public class SerializationTest {
2021

2122
@Test
@@ -70,4 +71,12 @@ public void wrapCborTest() throws IOException {
7071
assertArrayEquals(input, Mapper.INSTANCE.readValue(innerCbor, String[].class));
7172
assertArrayEquals(input, Mapper.INSTANCE.readFromCborByteString(outerBstr, String[].class));
7273
}
74+
75+
@Test
76+
public void cborNullTest() {
77+
byte[] cbor = Mapper.INSTANCE.cborNull();
78+
79+
assertTrue(CBORConstants.hasMajorType(CBORConstants.MAJOR_TYPE_MISC, cbor[0]));
80+
assertEquals(CBORConstants.BYTE_NULL, cbor[0]);
81+
}
7382
}

0 commit comments

Comments
 (0)