package frenetic

  1. Overview
  2. Docs
The Frenetic Programming Language and Runtime System

Install

Dune Dependency

Authors

Maintainers

Sources

5.0.5.tar.gz
md5=baf754df13a759c32f2c86a1b6f328da
sha512=80140900e7009ccab14b25e244fe7edab87d858676f8a4b3799b4fea16825013cf68363fe5faec71dd54ba825bb4ea2f812c2c666390948ab217ffa75d9cbd29

doc/frenetic.netkat/Frenetic_netkat/Semantics/index.html

Module Frenetic_netkat.SemanticsSource

Frenetic_kernel.Packets

If we only defined the semantics and were not building a system, a packet would only be a record of headers. However, the runtime needs to apply eval to packets contained in PACKET_IN mesages. For the runtime, packets also carry a payload that is unmodified by eval.

Sourcemodule HeadersValues : sig ... end

A map keyed by header names.

Sourcetype packet = {
  1. switch : Syntax.switchId;
  2. headers : HeadersValues.t;
  3. payload : Syntax.payload;
}
Sourcemodule PacketSet : Core.Set.S with type Elt.t = packet

Semantics

Sourceval eval : packet -> Syntax.policy -> PacketSet.t
Sourceval eval_pipes : packet -> Syntax.policy -> (string * packet) list * (string * packet) list * packet list
Sourceval size : Syntax.policy -> int
Sourceval queries_of_policy : Syntax.policy -> string list
Sourceval switches_of_policy : Syntax.policy -> Syntax.switchId list
OCaml

Innovation. Community. Security.