122 lines
4.4 KiB
Markdown
122 lines
4.4 KiB
Markdown
|
|
NORM SOURCE CODE RELEASE
|
|
|
|
AUTHORIZATION TO USE AND DISTRIBUTE
|
|
|
|
By receiving this distribution, you have agreed to the following
|
|
terms governing the use and redistribution of the prototype NRL
|
|
NORM software release written and developed by Brian Adamson and
|
|
Joe Macker:
|
|
|
|
Redistribution and use in source and binary forms, with or without
|
|
modification, are permitted provided that:
|
|
|
|
(1) source code distributions retain this paragraph in its entirety,
|
|
|
|
(2) distributions including binary code include this paragraph in
|
|
its entirety in the documentation or other materials provided
|
|
with the distribution, and
|
|
|
|
(3) all advertising materials mentioning features or use of this
|
|
software display the following acknowledgment:
|
|
|
|
"This product includes software written and developed
|
|
by Brian Adamson and Joe Macker of the Naval Research
|
|
Laboratory (NRL)."
|
|
|
|
The name of NRL, the name(s) of NRL employee(s), or any entity
|
|
of the United States Government may not be used to endorse or
|
|
promote products derived from this software, nor does the
|
|
inclusion of the NRL written and developed software directly or
|
|
indirectly suggest NRL or United States Government endorsement
|
|
of this product.
|
|
|
|
THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
|
|
IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
|
|
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
|
|
|
---------------------------------------------------------------------
|
|
|
|
|
|
This is a release of the NRL MDP source code. For most
|
|
purposes, the authors would prefer that the code not be
|
|
re-distributed so that users will obtain the latest (and most
|
|
debugged/improved) release from the official NORM web site:
|
|
|
|
<http://norm.pf.itd.nrl.navy.mil>
|
|
|
|
|
|
SOURCE CODE
|
|
===========
|
|
|
|
The following items can be build from this source code release:
|
|
|
|
1) libnorm.a - static NORM library for Unix platforms, or
|
|
|
|
Norm.lib - static NORM protocol library for Win32 platforms
|
|
|
|
(These libraries can be used by applications using the NORM API.
|
|
The file "normApi.h" provides function prototypes for NORM API
|
|
calls and the included "Norm Developer's Guide" provides a
|
|
reference manual for NORM application development using this
|
|
API. Additional tutorial material and API usage examples will
|
|
be provided as additional documentation in the future)
|
|
|
|
|
|
3) norm (or norm.exe (WIN32) - command-line "demo" application
|
|
built from "common/normApp.cpp"
|
|
|
|
(The included "Norm User's Guide" provides a rough overview
|
|
of how to use this demo app. This document requires some
|
|
updating to be accurate and complete. This demo application
|
|
is useful for file transfers (and streaming on Unix))
|
|
|
|
4) normTest (or normTest.exe (WIN32)) - very simple test application
|
|
|
|
(The "normTest" application (see "common/normTest.cpp") is really
|
|
just a simple playground for preliminary testing of the NORM
|
|
API and does not do anything useful. But it does provide
|
|
a very simple example of NORM API usage. More sophisticated
|
|
(and better-documented) examples of NORM API usage will be
|
|
provided in the future.
|
|
|
|
5) There is also an "examples" directory in the source code tree
|
|
that contains some simplified examples of NORM API usage. The
|
|
example set will be expanded as time progresses.
|
|
|
|
NRL also has started some apps built around NORM including:
|
|
|
|
A) A reliable multicast "chat" application (users can share files
|
|
and images, too) with a GUI. Like IRC with no server needed.
|
|
|
|
B) An application for reliably "tunneling" real-time UDP packet
|
|
streams (like RTP video or audio) using NORM's streaming
|
|
capability.
|
|
|
|
|
|
OTHER FILES:
|
|
============
|
|
|
|
NormDeveloperGuide.pdf - PDF version of NORM Developer's Guide
|
|
(nice for printing)
|
|
|
|
NormDeveloperGuide.html - HTML version of NORM Developer's Guide
|
|
with Hyperlinked content
|
|
(nice for browsing)
|
|
|
|
NormUserGuide.pdf - Guide to "norm" demo app usage
|
|
|
|
VERSION.TXT - NORM version history notes
|
|
|
|
README.TXT - this file
|
|
|
|
|
|
NOTES:
|
|
======
|
|
|
|
The NORM code depends upon the current "Protolib" release. The NORM
|
|
source code tarballs contain an appropriate release of "Protolib" as
|
|
part of the NORM source tree. If the NORM code is checked out from
|
|
our CVS server, it is necessary to also check out "protolib" separately
|
|
and provide paths to it for NORM to build.
|