Skip to content

Commit 640ce5b

Browse files
committed
Merge pull request #30 from frenetic-lang/v0.2.1-rc
v0.2.1
2 parents 06286c3 + 90946d0 commit 640ce5b

File tree

6 files changed

+204
-20
lines changed

6 files changed

+204
-20
lines changed

LICENSE

Lines changed: 171 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,171 @@
1+
This program is free software: you can redistribute it and/or modify it under
2+
the terms of the GNU General Public License version 3, as published by the Free
3+
Software Foundation (included below).
4+
5+
-------------------------------------------------------------------------------
6+
7+
GNU LESSER GENERAL PUBLIC LICENSE
8+
Version 3, 29 June 2007
9+
10+
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
11+
Everyone is permitted to copy and distribute verbatim copies
12+
of this license document, but changing it is not allowed.
13+
14+
15+
This version of the GNU Lesser General Public License incorporates
16+
the terms and conditions of version 3 of the GNU General Public
17+
License, supplemented by the additional permissions listed below.
18+
19+
0. Additional Definitions.
20+
21+
As used herein, "this License" refers to version 3 of the GNU Lesser
22+
General Public License, and the "GNU GPL" refers to version 3 of the GNU
23+
General Public License.
24+
25+
"The Library" refers to a covered work governed by this License,
26+
other than an Application or a Combined Work as defined below.
27+
28+
An "Application" is any work that makes use of an interface provided
29+
by the Library, but which is not otherwise based on the Library.
30+
Defining a subclass of a class defined by the Library is deemed a mode
31+
of using an interface provided by the Library.
32+
33+
A "Combined Work" is a work produced by combining or linking an
34+
Application with the Library. The particular version of the Library
35+
with which the Combined Work was made is also called the "Linked
36+
Version".
37+
38+
The "Minimal Corresponding Source" for a Combined Work means the
39+
Corresponding Source for the Combined Work, excluding any source code
40+
for portions of the Combined Work that, considered in isolation, are
41+
based on the Application, and not on the Linked Version.
42+
43+
The "Corresponding Application Code" for a Combined Work means the
44+
object code and/or source code for the Application, including any data
45+
and utility programs needed for reproducing the Combined Work from the
46+
Application, but excluding the System Libraries of the Combined Work.
47+
48+
1. Exception to Section 3 of the GNU GPL.
49+
50+
You may convey a covered work under sections 3 and 4 of this License
51+
without being bound by section 3 of the GNU GPL.
52+
53+
2. Conveying Modified Versions.
54+
55+
If you modify a copy of the Library, and, in your modifications, a
56+
facility refers to a function or data to be supplied by an Application
57+
that uses the facility (other than as an argument passed when the
58+
facility is invoked), then you may convey a copy of the modified
59+
version:
60+
61+
a) under this License, provided that you make a good faith effort to
62+
ensure that, in the event an Application does not supply the
63+
function or data, the facility still operates, and performs
64+
whatever part of its purpose remains meaningful, or
65+
66+
b) under the GNU GPL, with none of the additional permissions of
67+
this License applicable to that copy.
68+
69+
3. Object Code Incorporating Material from Library Header Files.
70+
71+
The object code form of an Application may incorporate material from
72+
a header file that is part of the Library. You may convey such object
73+
code under terms of your choice, provided that, if the incorporated
74+
material is not limited to numerical parameters, data structure
75+
layouts and accessors, or small macros, inline functions and templates
76+
(ten or fewer lines in length), you do both of the following:
77+
78+
a) Give prominent notice with each copy of the object code that the
79+
Library is used in it and that the Library and its use are
80+
covered by this License.
81+
82+
b) Accompany the object code with a copy of the GNU GPL and this license
83+
document.
84+
85+
4. Combined Works.
86+
87+
You may convey a Combined Work under terms of your choice that,
88+
taken together, effectively do not restrict modification of the
89+
portions of the Library contained in the Combined Work and reverse
90+
engineering for debugging such modifications, if you also do each of
91+
the following:
92+
93+
a) Give prominent notice with each copy of the Combined Work that
94+
the Library is used in it and that the Library and its use are
95+
covered by this License.
96+
97+
b) Accompany the Combined Work with a copy of the GNU GPL and this license
98+
document.
99+
100+
c) For a Combined Work that displays copyright notices during
101+
execution, include the copyright notice for the Library among
102+
these notices, as well as a reference directing the user to the
103+
copies of the GNU GPL and this license document.
104+
105+
d) Do one of the following:
106+
107+
0) Convey the Minimal Corresponding Source under the terms of this
108+
License, and the Corresponding Application Code in a form
109+
suitable for, and under terms that permit, the user to
110+
recombine or relink the Application with a modified version of
111+
the Linked Version to produce a modified Combined Work, in the
112+
manner specified by section 6 of the GNU GPL for conveying
113+
Corresponding Source.
114+
115+
1) Use a suitable shared library mechanism for linking with the
116+
Library. A suitable mechanism is one that (a) uses at run time
117+
a copy of the Library already present on the user's computer
118+
system, and (b) will operate properly with a modified version
119+
of the Library that is interface-compatible with the Linked
120+
Version.
121+
122+
e) Provide Installation Information, but only if you would otherwise
123+
be required to provide such information under section 6 of the
124+
GNU GPL, and only to the extent that such information is
125+
necessary to install and execute a modified version of the
126+
Combined Work produced by recombining or relinking the
127+
Application with a modified version of the Linked Version. (If
128+
you use option 4d0, the Installation Information must accompany
129+
the Minimal Corresponding Source and Corresponding Application
130+
Code. If you use option 4d1, you must provide the Installation
131+
Information in the manner specified by section 6 of the GNU GPL
132+
for conveying Corresponding Source.)
133+
134+
5. Combined Libraries.
135+
136+
You may place library facilities that are a work based on the
137+
Library side by side in a single library together with other library
138+
facilities that are not Applications and are not covered by this
139+
License, and convey such a combined library under terms of your
140+
choice, if you do both of the following:
141+
142+
a) Accompany the combined library with a copy of the same work based
143+
on the Library, uncombined with any other library facilities,
144+
conveyed under the terms of this License.
145+
146+
b) Give prominent notice with the combined library that part of it
147+
is a work based on the Library, and explaining where to find the
148+
accompanying uncombined form of the same work.
149+
150+
6. Revised Versions of the GNU Lesser General Public License.
151+
152+
The Free Software Foundation may publish revised and/or new versions
153+
of the GNU Lesser General Public License from time to time. Such new
154+
versions will be similar in spirit to the present version, but may
155+
differ in detail to address new problems or concerns.
156+
157+
Each version is given a distinguishing version number. If the
158+
Library as you received it specifies that a certain numbered version
159+
of the GNU Lesser General Public License "or any later version"
160+
applies to it, you have the option of following the terms and
161+
conditions either of that published version or of any later version
162+
published by the Free Software Foundation. If the Library as you
163+
received it does not specify a version number of the GNU Lesser
164+
General Public License, you may choose any version of the GNU Lesser
165+
General Public License ever published by the Free Software Foundation.
166+
167+
If the Library as you received it specifies that a proxy can decide
168+
whether future versions of the GNU Lesser General Public License shall
169+
apply, that proxy's public statement of acceptance of any version is
170+
permanent authorization for you to choose that version for the
171+
Library.

README.md

Lines changed: 24 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,37 @@
11
OCaml Packet
22
============
33

4-
A serialization library for ethernet, TCP, IP, ARP, ICMP, and others.
4+
A serialization library for network packets.
55

66
[![Build Status](https://travis-ci.org/frenetic-lang/ocaml-packet.png)](https://travis-ci.org/frenetic-lang/ocaml-packet)
77

8-
Building from Source
9-
--------------------
8+
Installation
9+
------------
1010

11-
This package is available on OPAM:
11+
You can install the latest release from [OPAM][http://opam.ocamlpro.com/] using
12+
the following command:
1213

1314
$ opam install packet
1415

15-
Hacking
16-
-------
16+
Development
17+
-----------
1718

18-
The `_oasis` file specifies all the dependencies. If you're hacking on the
19-
library, you should install the dependencies needed to build the main
20-
library and the test suite.
19+
To build from source, first ensure that you've installed all dependencies,
20+
which are listed in the `_oasis` file under the `Library packet` and `Library
21+
quickcheck` sections. Then, run the following commands:
2122

22-
$ opam install ocamlfind cstruct quickcheck ounit pa_ounit
23-
$ ./configure --enable-tests --enable-quickcheck
23+
./configure --enable-tests --enable-quickcheck
24+
$ make
2425
$ make test
26+
$ make install
27+
28+
While developing, you may want to install your latest changes for testing with
29+
other packages. `make install` will fail when trying to reinstall, so use this
30+
command instead:
31+
32+
$ make reinstall
33+
34+
License
35+
-------
36+
37+
LGPLv3, see LICENSE file for its text.

_oasis

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
OASISFormat: 0.3
22
Name: packet
3-
Version: 0.2.0
3+
Version: 0.2.1
44
Synopsis: Serialization for some common network packets, including
55
ethernet frames, IP, TCP, and ARP.
66
Authors: https://github.com/frenetic-lang/ocaml-packet/contributors

lib/META

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# OASIS_START
2-
# DO NOT EDIT (digest: 48683c18345037f73806851d2ec27386)
3-
version = "0.2.0"
2+
# DO NOT EDIT (digest: e11d8d1a4f860583d2201977fec001a4)
3+
version = "0.2.1"
44
description =
55
"Serialization for some common network packets, including ethernet frames, IP, TCP, and ARP."
66
requires = "str cstruct cstruct.syntax"
@@ -10,7 +10,7 @@ archive(native) = "packet.cmxa"
1010
archive(native, plugin) = "packet.cmxs"
1111
exists_if = "packet.cma"
1212
package "quickcheck" (
13-
version = "0.2.0"
13+
version = "0.2.1"
1414
description =
1515
"Serialization for some common network packets, including ethernet frames, IP, TCP, and ARP."
1616
requires = "packet quickcheck"

lib/Packet.mli

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -301,11 +301,11 @@ val arpOperation : packet -> int
301301
(** [setDlSrc pkt addr] sets the ethernet source address of [pkt] to [addr]. *)
302302
val setDlSrc : packet -> dlAddr -> packet
303303

304-
(** [setDlSrc pkt addr] sets the ethernet destination address of [pkt] to
304+
(** [setDlDst pkt addr] sets the ethernet destination address of [pkt] to
305305
[addr]. *)
306306
val setDlDst : packet -> dlAddr -> packet
307307

308-
(** [setDlSrc pkt vlan] sets the VLAN identifier of [pkt] to [vlan]. *)
308+
(** [setDlVlan pkt vlan] sets the VLAN identifier of [pkt] to [vlan]. *)
309309
val setDlVlan : packet -> dlVlan -> packet
310310

311311
(** [setDlVlanPcp pkt pri] sets the VLAN priority of [pkt] to [pri]. *)

setup.ml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
(* setup.ml generated for the first time by OASIS v0.3.0 *)
22

33
(* OASIS_START *)
4-
(* DO NOT EDIT (digest: 853bd6e6a32f8a562a9bae127daa55f9) *)
4+
(* DO NOT EDIT (digest: 3daa6b2eb51a4ad4a3c363d15e290382) *)
55
(*
66
Regenerated by OASIS v0.4.1
77
Visit http://oasis.forge.ocamlcore.org for more information and
@@ -6739,7 +6739,7 @@ let setup_t =
67396739
alpha_features = [];
67406740
beta_features = [];
67416741
name = "packet";
6742-
version = "0.2.0";
6742+
version = "0.2.1";
67436743
license =
67446744
OASISLicense.DEP5License
67456745
(OASISLicense.DEP5Unit
@@ -6999,7 +6999,7 @@ let setup_t =
69996999
};
70007000
oasis_fn = Some "_oasis";
70017001
oasis_version = "0.4.1";
7002-
oasis_digest = Some "\222\204`\179\222`\136\003%s9\235\184R\030\217";
7002+
oasis_digest = Some "\246\148\213{d\144\203\0220\1813c\017\138\142V";
70037003
oasis_exec = None;
70047004
oasis_setup_args = [];
70057005
setup_update = false

0 commit comments

Comments
 (0)