GithubHelp home page GithubHelp logo

teep-protocol's Introduction

TEEP Protocol

TEEP Protocol Draft

Converting draft

Prerequisite packages

Requires two packages:

kramdown-rfc2629 by Ruby
xml2rfc by Python

Installing required packages on Fedora

sudo dnf makecache
sudo dnf -y install python3-pip git make gem
gem install kramdown-rfc2629
pip3 install xml2rfc

Installing required packages on Ubuntu

sudo apt-get update
sudo apt-get -y install python3-pip ruby git curl
pip3 install xml2rfc
gem install kramdown-rfc2629

Installing cddl tool https://rubygems.org/gems/cddl

gem install cddl
gem update

Note that the cddl validation uses this cddl tool, not the one from https://github.com/anweiss/cddl.

Generating draft from a markdown file

git clone https://github.com/ietf-teep/teep-protocol.git
cd teep-protocol/
make

It will create draft-ietf-teep-protocol-latest.txt and draft-ietf-teep-protocol-latest.xml.

Checking cddl syntax

Creating concatenated cddl file for TEEP Protocol.

The file name 'check-draft-ietf-teep-protocol.cddl' will be created under directory 'cddl'. The cddl file for TEEP Protocol requires cddl files from suit-report and suit-manifest. This command downloads cddl files from respected repos and concatenates them to one cddl file usable to run with the cddl tool.

make -C cddl

Perform cddl syntax check with cddl tool.

The command to run FULL cddl syntax check.

make validate-cddl

To check syntax cddl syntax in TEEP file and not suit which is useful during debugging teep by using only QueryRequest which do not contain SUIT part.

make validate-teep-cddl

Push both md and cddl file to git repo every time revising md file.

The cddl file will be updated from the md file every time when running make.

You must push the changes of commit of both md file and cddl file even if you only have changed md file.

teep-protocol's People

Contributors

dthaler avatar mcd500 avatar kentakayama avatar hannestschofenig avatar ko-isobe avatar mingpeiwk avatar thomas-fossati avatar cabo avatar mpei1981 avatar larsr avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.