I'm writing my engineering thesis about cc2420 AES encryption. I found that there is a problem in tos 2.1.2. Neither CC2420SecurityTest nor tutorial program fromhttp://tinyos.stanford.edu/tinyos-wiki/index.php/CC2420_Security_Tutorial works properly.
In CC2420SecurityTest even if i changed encryption key packets were being received normaly while they should not. In the program from tutorial compiler returned the error: TOS biszkopt@biszkopt-VirtualBox:/opt/tinyos-2.1.2/apps/tests/cc2420/TestSecurity/RadioCountToLeds1$ make telosb mkdir -p build/telosb compiling RadioCountToLedsAppC to a telosb binary ncc -o build/telosb/main.exe -Os -fnesc-separator=__ -Wall -Wshadow -Wnesc-all -target=telosb -fnesc-cfile=build/telosb/app.c -board= -DDEFINED_TOS_AM_GROUP=0x22 -DCC2420_HW_ACKNOWLEDGEMENTS -DCC2420_HW_SECURITY -DPACKET_LINK -DTOSH_DATA_LENGTH=115 -I/opt/tinyos-2.1.2/tos/lib/printf -DPRINTFUART_ENABLED -I./ -DIDENT_APPNAME=\"RadioCountToLed\" -DIDENT_USERNAME=\"biszkopt\" -DIDENT_HOSTNAME=\"biszkopt-Virtua\" -DIDENT_USERHASH=0x9064dbbbL -DIDENT_TIMESTAMP=0x52a71575L -DIDENT_UIDHASH=0x74b076f8L RadioCountToLedsAppC.nc -lm /opt/tinyos-2.1.2/tos/chips/cc2420/lpl/DummyLplC.nc:39:2: warning: #warning "*** LOW POWER COMMUNICATIONS DISABLED ***" /opt/tinyos-2.1.2/tos/chips/cc2420/link/PacketLinkC.nc:38:2: warning: #warning "*** USING PACKET LINK LAYER" /opt/tinyos-2.1.2/tos/chips/cc2420/security/SecAMSenderP.nc: In function ‘SecAMSenderP__0__AMSend__send’: /opt/tinyos-2.1.2/tos/chips/cc2420/security/SecAMSenderP.nc:69:21: error: lvalue required as left operand of assignment /opt/tinyos-2.1.2/tos/chips/cc2420/security/SecAMSenderP.nc: In function ‘SecAMSenderP__0__CC2420SecurityMode__setCtr’: /opt/tinyos-2.1.2/tos/chips/cc2420/security/SecAMSenderP.nc:105:21: error: lvalue required as left operand of assignment make: *** [exe0] Error 1 The difference between them is that in the Makefile file in CC2420SecurityTest there is additional line: CFLAGS+=-DTFRAMES_ENABLED. When I deleted that line compiler returned the same error as in tuturial example. I found the solution - change lines: #if ! defined(TFRAMES_ENABLED) (uint8_t*)secHdr += 1; #endif to: #if ! defined(TFRAMES_ENABLED) secHdr=(security_header_t*)((uint8_t*)secHdr+1); #endif in tinyos-2.1.2/tos/chips/cc2420/security/SecAMSenderP.nc Łukasz Szubart _______________________________________________ Tinyos-help mailing list Tinyos-help@millennium.berkeley.edu https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help