commit 749e209cc5eeaa07ceace3db6cd03eca8e49e24a from: Sven M. Hallberg date: Thu Nov 03 18:09:40 2022 UTC start some manpages commit - 4a1921341a413f7147802d912fe133977642d763 commit + 749e209cc5eeaa07ceace3db6cd03eca8e49e24a blob - 4a1b7780aef447b311cdd9df18413185c21fc2f2 blob + 21353f51bd2965a456bcd099e33d31aeaa140ab3 --- Makefile +++ Makefile @@ -1,11 +1,15 @@ -TESTS = test_nfa test_regex test_pcre test_hammer -APPS = simcard -OBJS = nfa.o +TESTS = test_nfa test_regex test_pcre test_hammer +APPS = simcard +OBJS = nfa.o +MANS = simcard.1 nfa.7 +MANDOC ?= mandoc +PAPER ?= a4 + .PHONY: all clean benchmark -all: ${OBJS} ${TESTS} ${APPS} +all: ${OBJS} ${TESTS} ${APPS} ${MANS} clean: - rm -f ${OBJS} ${TESTS} ${APPS} + rm -f ${OBJS} ${TESTS} ${APPS} ${MANS} benchmark: ${TESTS} ./test_nfa -b ./test_regex -b @@ -25,3 +29,13 @@ test_hammer: test_hammer.c simcard: $(OBJS) simcard.c $(CC) $(CFLAGS) -o $@ $(OBJS) $< + + +.SUFFIXES: .mdoc .pdf .html +.mdoc: + $(MANDOC) -I os= -T lint $< + cp -f $< $@ +.mdoc.pdf: + $(MANDOC) -I os= -O paper=$(PAPER) -T pdf $< > $@ +.mdoc.html: + $(MANDOC) -I os= -T html $< > $@ blob - /dev/null blob + acfcf883916aa6be4aabd70369b218f983b34cad (mode 644) --- /dev/null +++ nfa.7.mdoc @@ -0,0 +1,46 @@ +.Dd May 26, 2022 +.Dt NFA 7 +.Os +.Sh NAME +.Nm nfa +.Nd minimalist finite state machine combinators in C +.Sh INTRODUCTION +.Sh DESCRIPTION +.Ss Combinators +.Ss Internal Representation +.Ss Input and Output Alphabets +.Ss Execution Algorithm +.Sh EXAMPLES +.Sh SEE ALSO +.Xr simcard 1 , +.Xr nfa 3 +.Sh BIBLIOGRAPHY +.Sh AUTHORS +.An Sven M. Hallberg +.Mt pesco@khjk.org +.Sh TODO +.Bd -literal +- Struktur: + - Kombinatoren + - Algorithmus zur Ausführung + - Innere Darstellung (struct nfa) + - Konzept Input/Ausgabe/Aktionen/Gedanken/... + - Postelsches Prinzip (neu gedacht / in diesem Kontext) + - Anwendungsbeispiel + +- Umdrehen (Rollentausch)? <- oder Ausblick? + +- Standard-Teile: + - Introduction + - ... + - Evaluation + - performance? + - security? + - Related Work + - session languages + - session types + - ...? + - Acknowledgements + - Future Directions + - Conclusion +.Ed blob - /dev/null blob + 6f1c043a02fbef61696eec1d14e88ab8fdaae33b (mode 644) --- /dev/null +++ simcard.1.mdoc @@ -0,0 +1,72 @@ +.Dd March 31, 2022 +.Dt SIMCARD 1 +.Os +.Sh NAME +.Nm simcard +.Nd emulate a SIM card application layer +.Sh SYNOPSIS +.Nm +.Li < command.bin > response.bin +.Sh DESCRIPTION +The +.Nm +program implements the application layer protocol used by +mobile telephone SIM cards +as described in ETSI\ TS\ 102\ 221. +It reads a single command APDU (application protocol data unit) from +standard input, +executes the transaction, +and writes a corresponding response APDU to standard output. +Diagnostics appear on standard error. +.Sh EXIT STATUS +.Ex -std +.Sh EXAMPLES +.Bd -literal +.Sy $ Li printf '\ex00\exA4\ex00\ex0C' | simcard | od -t x1 +action: SELECT_MF +0000000 90 00 +0000002 +.Ed +.Bd -literal +.Sy $ Li printf '\ex12\ex34' | simcard +Protocol error. +.Ed +.Bd -literal +.Sy $ Li simcard