From 778bbe1ff26a2b126648a87c721a41f6b8d0690c Mon Sep 17 00:00:00 2001 From: anandatul144 Date: Sun, 17 May 2020 12:16:22 +0200 Subject: [PATCH] added t1 t2 and readme --- README.md | 23 +++++++++++++++++++++++ trial1/fun1.c | 8 ++++++++ trial1/fun1.h | 5 +++++ trial1/include/fun2.c | 8 ++++++++ trial1/include/fun2.h | 1 + trial1/main | Bin 0 -> 8360 bytes trial1/main.c | 9 +++++++++ trial1/makefile | 19 +++++++++++++++++++ trial1/out/main2 | Bin 0 -> 8360 bytes trial2/include/hellomake.h | 1 + trial2/src/hellofunc.c | 9 +++++++++ trial2/src/hellomake | Bin 0 -> 8384 bytes trial2/src/hellomake.c | 8 ++++++++ trial2/src/makefile | 26 ++++++++++++++++++++++++++ trial2/src/obj/hellofunc.o | Bin 0 -> 1560 bytes trial2/src/obj/hellomake.o | Bin 0 -> 1424 bytes 16 files changed, 117 insertions(+) create mode 100644 README.md create mode 100644 trial1/fun1.c create mode 100644 trial1/fun1.h create mode 100644 trial1/include/fun2.c create mode 100644 trial1/include/fun2.h create mode 100644 trial1/main create mode 100644 trial1/main.c create mode 100644 trial1/makefile create mode 100644 trial1/out/main2 create mode 100644 trial2/include/hellomake.h create mode 100644 trial2/src/hellofunc.c create mode 100644 trial2/src/hellomake create mode 100644 trial2/src/hellomake.c create mode 100644 trial2/src/makefile create mode 100644 trial2/src/obj/hellofunc.o create mode 100644 trial2/src/obj/hellomake.o diff --git a/README.md b/README.md new file mode 100644 index 0000000..8408ee0 --- /dev/null +++ b/README.md @@ -0,0 +1,23 @@ +# openSSL-DICE +Simulated implementation of DICE based on microsoft paper on dice n riot. initial implementation, later to be implemented on Jetson Xavior + + +Step 1 - skeletal setup + +sketch roadmap of dataflow, +lable functions, +locate input and output DS, +find appropriate openssl fns, + + + +Step 2 - codify + +use static value for ids, eg UDS, FW, + + + + +Step 3 - replace static IDs with real values + +use real values from device? use rng? diff --git a/trial1/fun1.c b/trial1/fun1.c new file mode 100644 index 0000000..a8f7227 --- /dev/null +++ b/trial1/fun1.c @@ -0,0 +1,8 @@ +#include "fun1.h" + +int fun1() +{ + printf("Hello from FN1\n"); +// fun2(); + return 0; +} diff --git a/trial1/fun1.h b/trial1/fun1.h new file mode 100644 index 0000000..6914137 --- /dev/null +++ b/trial1/fun1.h @@ -0,0 +1,5 @@ +#include + + + +int fun1(); diff --git a/trial1/include/fun2.c b/trial1/include/fun2.c new file mode 100644 index 0000000..3c6b92d --- /dev/null +++ b/trial1/include/fun2.c @@ -0,0 +1,8 @@ +#include "fun2.h" + +int fun2() +{ + printf("Hello from FN2\n"); + return 0; +} + diff --git a/trial1/include/fun2.h b/trial1/include/fun2.h new file mode 100644 index 0000000..77ca2fd --- /dev/null +++ b/trial1/include/fun2.h @@ -0,0 +1 @@ +int fun2(); diff --git a/trial1/main b/trial1/main new file mode 100644 index 0000000000000000000000000000000000000000..bdd6deaf2c9e0a07ae589f4092090572376b9f30 GIT binary patch literal 8360 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 ZD208-QLkIdF>z)6A*o;ifa;11bF=oY?G^j5 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 ZD208-QLkIdF>z)6A*o;if +#include + +void myPrintHelloMake(void) { + + printf("Hello makefiles!\n"); + + return; +} diff --git a/trial2/src/hellomake b/trial2/src/hellomake new file mode 100644 index 0000000000000000000000000000000000000000..390cb17f8eb56c1e9d9646d6266a3ebcc49e2e45 GIT binary patch literal 8384 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 S%DHl7{THMIK3BMlSN~r$VK*QE literal 0 HcmV?d00001 diff --git a/trial2/src/hellomake.c b/trial2/src/hellomake.c new file mode 100644 index 0000000..3d673b7 --- /dev/null +++ b/trial2/src/hellomake.c @@ -0,0 +1,8 @@ +#include + +int main() { + // call a function in another file + myPrintHelloMake(); + + return(0); +} diff --git a/trial2/src/makefile b/trial2/src/makefile new file mode 100644 index 0000000..95561df --- /dev/null +++ b/trial2/src/makefile @@ -0,0 +1,26 @@ +IDIR =../include +CC=gcc +CFLAGS=-I$(IDIR) + +ODIR=obj +LDIR =../lib + +LIBS=-lm + +_DEPS = hellomake.h +DEPS = $(patsubst %,$(IDIR)/%,$(_DEPS)) + +_OBJ = hellomake.o hellofunc.o +OBJ = $(patsubst %,$(ODIR)/%,$(_OBJ)) + + +$(ODIR)/%.o: %.c $(DEPS) + $(CC) -c -o $@ $< $(CFLAGS) + +hellomake: $(OBJ) + $(CC) -o $@ $^ $(CFLAGS) $(LIBS) + +.PHONY: clean + +clean: + rm -f $(ODIR)/*.o *~ core $(INCDIR)/*~ diff --git a/trial2/src/obj/hellofunc.o b/trial2/src/obj/hellofunc.o new file mode 100644 index 0000000000000000000000000000000000000000..7f46741ce2374a944b437a085dec346f62deafc0 GIT binary patch literal 1560 zcmbtT&1(};5TDIzKQxi}aVS(|y+{T7$U?v>RPsSS4zZQCK`*jw(hVuiZp!XkXg%mn z=%JAR$%}u2|A5e|ccIQ?-_Yml=Ayswc4mHWX5P%3moKeeyI@(su;2|`Tg(FdC|v8c zxmtq~6rtZe|Jl9RCgzepvyb1p!DKRZLjO1z9ZiDdDL|*$eC=%X2Wccz=cTBM%BGvn zE%&p#B`Q_nKF@e~L`e|Vr#-Mv%hq~vd1ZzLJw}ce;URtM_sU-j&C=2iI*`2p)XOdS zb(Obm=XMHU<1Y_3X3B#NxASPsvb=!Luh@pA8~!C^9%yyWdq?gGuJR3Ufa(Gs#x#{t z8V$t|!n1erQ6%SsdW&-cuhZLY)O+4;yS?8!@DA#YUdw}%R3>}`cS6sAy8V5Xp{N|_ zX6|adqj>Vyo(_OW&O+%AP|7%yW7gte;tLs^N)U&>^g#@g1VlW|jNvp4g9!JcsSHGC zr@xsQQ6nO_F zox?9;P4UkZZ@$ERwQmZ_q2mP_l=ENXU5urif6WeUKL0-II?VH5;U;n1C;J{Mh3eD6 z@hls-$-3@0(+y2Gec!8ivwn`>(qc*F`)7I&mAv_VPziZXG(U>vc;=}d^K7KxJADw2 mDwzH=tGLW~;>_701(zz0?pKG|Kg}mE{zMh!>%pj-@qYmB=5DC~ literal 0 HcmV?d00001 diff --git a/trial2/src/obj/hellomake.o b/trial2/src/obj/hellomake.o new file mode 100644 index 0000000000000000000000000000000000000000..2526b2ea2aac30666c297207cf70b8e02cc26384 GIT binary patch literal 1424 zcmbVL&r1SP5T4b_eq+%gsDr04sD}$d@!9HjLaA^a&MFoq}%tIUR%k zmY{3*pk~%LxxThbBl~9Nd-J`SH*dVlmkJTX02Tu_pyx3P@D%CU8Q;vnIE+DM>+$WK z{AXHDUZI%Fr4z|Ywd2W7VpXh&)Uw&}J@eLF6R8zpE_QJuz>L2F7}p12T*i&L@!0Sa z7BG)EeI#*OvXk+LNN!?i2Ls6eL#Xxv`1lIjj)vY0Ad0^*iQ-9N5{02K7*C1)fe-$| zClHwq)Z^dL$JBi_MiPCF>D#J1jYiY8FC0+=*FN{aDwfKd*^*T*6b|!8)=_q|l()dW z+HakEa*LvOF`Ccd%IKz}_4@T9Ww|Zw+64$d+^JhWC3WV1`KHRB(h_lgIzK3!pLH5H*$&3t z1f77b$CeepZ)Om?SDZDaS#kf^-$o;>|Fa?er+*vsx&Ks;o}12orUhkK6-={ET%Awv es`nltcu~A{asr~?e+u`)_$gJ?aezyv&i@8QA6jDo literal 0 HcmV?d00001