Skip to content

Commit

Permalink
Expanded project name.
Browse files Browse the repository at this point in the history
  • Loading branch information
lextm committed Oct 30, 2024
1 parent c754c2b commit 655b1f6
Show file tree
Hide file tree
Showing 30 changed files with 132 additions and 253 deletions.
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#SNMP Docs
==========
C# SNMP Docs
============

This project provides the source for [#SNMP Library Docs](https://docs.lextudio.com/sharpsnmplib/). You can learn more about #SNMP at the [homepage](https://sharpsnmp.com).
This project provides the source for [C# SNMP Library Docs](https://docs.lextudio.com/sharpsnmplib/). You can learn more about C# SNMP at the [homepage](https://sharpsnmp.com).

**We accept pull requests!** However, before submitting a pull request, please [read the CONTRIBUTING guidelines](CONTRIBUTING.md), which include information on how to build the docs locally, as well as style and organizational guidance.
14 changes: 7 additions & 7 deletions library/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@
master_doc = 'index'

# General information about the project.
project = u'#SNMP Library Documentation'
project = u'C# SNMP Library Documentation'
copyright = u'2015-2024, LeXtudio Inc.'
author = u'LeXtudio Inc.'

Expand Down Expand Up @@ -156,7 +156,7 @@

# The name for this set of Sphinx documents. If None, it defaults to
# "<project> v<release> documentation".
html_title = "#SNMP Library Documentation"
html_title = "C# SNMP Library Documentation"

# A shorter title for the navigation bar. Default is the same as html_title.
#html_short_title = None
Expand Down Expand Up @@ -258,7 +258,7 @@
# (source start file, target name, title,
# author, documentclass [howto, manual, or own class]).
latex_documents = [
(master_doc, 'sharpsnmplib.tex', u'#SNMP Library Documentation',
(master_doc, 'sharpsnmplib.tex', u'C# SNMP Library Documentation',
u'Lex Li', 'manual'),
]

Expand Down Expand Up @@ -288,7 +288,7 @@
# One entry per manual page. List of tuples
# (source start file, name, description, authors, manual section).
man_pages = [
(master_doc, 'sharpsnmplib', u'#SNMP Library Documentation',
(master_doc, 'sharpsnmplib', u'C# SNMP Library Documentation',
[author], 1)
]

Expand All @@ -302,8 +302,8 @@
# (source start file, target name, title, author,
# dir menu entry, description, category)
texinfo_documents = [
(master_doc, 'sharpsnmplib', u'#SNMP Library Documentation',
author, 'sharpsnmplib', '#SNMP Library Documentation',
(master_doc, 'sharpsnmplib', u'C# SNMP Library Documentation',
author, 'sharpsnmplib', 'C# SNMP Library Documentation',
'Networking'),
]

Expand Down Expand Up @@ -397,7 +397,7 @@
feed_num_items = 15
feed_skip_regex = '(.)*index'
feed_base_url = 'https://docs.lextudio.com/sharpsnmplib/'
feed_description = '#SNMP Library Documentation'
feed_description = 'C# SNMP Library Documentation'
feed_author = 'LeXtudio Inc.'

def setup(app):
Expand Down
2 changes: 1 addition & 1 deletion library/contribute/github.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
GitHub Guide
============

This page shows you how to use #SNMP Library repo on GitHub to collaborate.
This page shows you how to use C# SNMP Library repo on GitHub to collaborate.

Submitting a Patch
------------------
Expand Down
10 changes: 5 additions & 5 deletions library/getting-started/export-restrictions.rst
Original file line number Diff line number Diff line change
Expand Up @@ -11,22 +11,22 @@ This page shows you information about export restrictions.

Background
----------
The #SNMP Library is open source software that contains strong encryption.
The C# SNMP Library is open source software that contains strong encryption.
Specifically, it has the ability to encrypt and decrypt SNMPv3 protocol. Its
primary distribution point is in the United States, and subsequently falls
under U.S. encryption export regulations.

To the best of our knowledge, #SNMP Library falls under ECCN 5D002 and
To the best of our knowledge, C# SNMP Library falls under ECCN 5D002 and
qualifies for license exemption TSU under Section 734.3(b)(3) of the EAR. There
are no U.S. regulations that prohibit you from downloading #SNMP Library.
are no U.S. regulations that prohibit you from downloading C# SNMP Library.

References
----------
Frank Hecker has written `a detailed explanation of Mozilla's ECCN
<http://hecker.org/mozilla/eccn>`_ . It applies to other open source software,
including #SNMP Library.
including C# SNMP Library.

Addendum: Prior to January 7, 2011, downloading #SNMP Library in Cuba, Iran,
Addendum: Prior to January 7, 2011, downloading C# SNMP Library in Cuba, Iran,
North Korea, Libya, Sudan, and Syria was prohibited. `On January 7, 2011 the
U.S. Bureau of Industry and Security removed this restriction
<http://www.federalregister.gov/articles/2011/01/07/2010-32803/publicly-available-mass-market-encryption-software-and-other-specified-publicly-available-encryption>`_ .
Expand Down
8 changes: 4 additions & 4 deletions library/getting-started/history.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ Project History

By `Lex Li`_

This article describes history of #SNMP.
This article describes history of C# SNMP (#SNMP) ecosystem.

.. contents:: In this article:
:local:
Expand All @@ -19,7 +19,7 @@ Lex Li did an evaluation report in 2008 for his project at Cisco [1]_. He was
quite satisfied with some of the commercial solutions, but felt that there
should be a need to have an open source implementation. Based on the code base
from Malcolm Crowe [2]_, Lex was able to start a new open source project called
#SNMP Library [3]_ in April 2008.
C# SNMP Library [3]_ in April 2008 (#SNMP for short).

It was challenging a task to design an easy-to-use SNMP API, and also difficult
a mission to study the SNMP protocol details. Remember the facts that Lex just
Expand Down Expand Up @@ -53,7 +53,7 @@ the message format (and different agent side behaviors when we attempted to
implement an agent prototype). Thus, many API elements have to be completely
rewritten. But things became easier as another open source SNMP implementation
named SNMP#NET was published by Milan Sinadinovic [10]_ . By reusing the
encryption code, #SNMP Library soon started to support SNMP v3 packets. The 3.0
encryption code, C# SNMP Library soon started to support SNMP v3 packets. The 3.0
release (code name Trident) was released in August 2009 with initial SNMP v3
support.

Expand Down Expand Up @@ -92,7 +92,7 @@ commercial products from LeXtudio [22]_ . Many issues once reported to the open
source MIB compiler were finally fixed in the Pro edition by the new compiler
design.

The open source project was renamed back to #SNMP Library. Its latest release
The open source project was renamed back to C# SNMP Library. Its latest release
8.5 was published in February 2015 [23]_ . This release featured full support
for Windows, OS X, Linux, and Xamarin platforms.

Expand Down
67 changes: 14 additions & 53 deletions library/getting-started/installing-on-windows.rst
Original file line number Diff line number Diff line change
@@ -1,24 +1,24 @@
Installing #SNMP Library
========================
Installing C# SNMP Library
==========================

By `Lex Li`_

This page shows you how to install #SNMP Library to your project on Windows.
This page shows you how to install C# SNMP Library to your project on Windows.
The usage on other platforms (macOS and Linux) should be quite similar.

.. contents:: In this article:
:local:
:depth: 1

Install #SNMP Library via NuGet
-------------------------------
Install C# SNMP Library via NuGet
---------------------------------

The easiest way to get started building applications with #SNMP Library is to
The easiest way to get started building applications with C# SNMP Library is to
install via NuGet in the latest version of Visual Studio 2015 (including the
free Community edition).

1. Install `Visual Studio 2015
<https://go.microsoft.com/fwlink/?LinkId=532606>`_.
<https://go.microsoft.com/fwlink/?LinkId=532606>`_ or above.

Be sure to specify that you include the Windows and Web Development.

Expand All @@ -29,65 +29,26 @@ free Community edition).

3. Open/create an empty Windows Forms project.

4. Install #SNMP Library NuGet packages following `NuGet conventions
4. Install C# SNMP Library NuGet packages following `NuGet conventions
<https://docs.nuget.org/Consume/Package-Manager-Dialog>`_.

The latest package can be found at,

* `Main Library <https://www.nuget.org/packages/Lextm.SharpSnmpLib/>`_.
* `Platform Extensions
<https://www.nuget.org/packages/Lextm.SharpSnmpLib.Extensions/>`_
(Required by release 10.0.0. Not required by release 10.0.1 and above.)
* `DES/AES Privacy Providers via Bouncy Castle
<https://www.nuget.org/packages/Lextm.SharpSnmpLib.BouncyCastle/>`_
(Required by platforms without native DES/AES support, like .NET Core/UWP.
Obsolete in 11.0.0 and above).
* `NuGet.org <https://www.nuget.org/packages/Lextm.SharpSnmpLib/>`_.

.. note:: In 10.0.0 release, the platform extensions package is required for
.NET Framework, Xamarin.iOS, and Xamarin.Android applications so as to use
DES/AES encryption. **This package is no longer needed in release 10.0.1 and
above.**
Install C# SNMP Library via source code
---------------------------------------

.. note:: In 10.0.9 release, AES privacy providers based on Bouncy Castle are
shipped in a new package for .NET Core/UWP scenarios. As Bouncy Castle AES
algorithms are slower than native AES in general, **if you are targeting a
platform with native AES support, such as .NET Framework/Mono/Xamarin, this
package should not be used.**

.. note:: DES privacy provider based on Bouncy Castle would be available in
10.0.10 release.

.. note:: Starting from 11.0.0 release, ``Lextm.SharpSnmpLib.BouncyCastle``
package is obsolete, and no longer published. You can compile your own copy
using the source code from
`the samples <https://github.com/lextudio/sharpsnmplib-samples>`_ .

Install #SNMP Library via source code
-------------------------------------

#SNMP Library source code can be directly used in your project.
C# SNMP Library source code can be directly used in your project.

#. Download the source code from `GitHub
<https://github.com/lextudio/sharpsnmplib/releases>`_, or clone the repo
directly.
#. Run ``prepare.bat`` on Windows (or ``prepare.sh`` on non-Windows platforms)
to prepare the code base for compilation.

.. note:: This step is no longer needed in release 10.0.10 and above.

#. Open/create a empty Windows Forms project in a solution.

#. Add SharpSnmpLib.csproj (release 10.0 and above), and
SharpSnmpLib.Full.csproj (10.0.0) in ``SharpSnmpLib`` directory to your
#. Add SharpSnmpLib.csproj in ``SharpSnmpLib`` directory to your
solution.

.. note:: SharpSnmpLib.Android.csproj and SharpSnmpLib.iOS.csproj might be used
to target Xamarin platforms for release 10.0.0. They are no longer needed
for 10.0.1 release and above.

.. note:: Other projects (``SharpSnmpLib.BouncyCastle.csproj``) are optional.

Sample projects for #SNMP Library are available in their own
Sample projects for C# SNMP Library are available in their own
`repo <https://github.com/lextudio/sharpsnmplib-samples>`_ .

Related Resources
Expand Down
73 changes: 3 additions & 70 deletions library/getting-started/license-notice.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Source Code License for Releases
By `Lex Li`_

This article describes what open source licenses are used for the source code
of major releases of #SNMP.
of major releases of C# SNMP.

.. contents:: In this article:
:local:
Expand All @@ -19,57 +19,11 @@ SharpSnmpLib.dll MIT/X11
Samples public domain or MIT/X11
======================================= ========================

Release 10.0
------------
======================================= ====================
Assembly Name Source Code License
======================================= ====================
SharpSnmpLib.dll MIT/X11
SharpSnmpLib.Full.dll (10.0.0 only) MIT/X11
SharpSnmpLib.Android.dll (10.0.0 only) MIT/X11
SharpSnmpLib.iOS.dll (10.0.0 only) MIT/X11
SharpSnmpLib.BouncyCastle.dll (10.0.9+) MIT/X11
snmpd.exe MIT/X11
All other samples public domain
======================================= ====================

Release 8.5 and 9.x
-------------------
========================== ====================
Assembly Name Source Code License
========================== ====================
SharpSnmpLib.Portable.dll MIT/X11
SharpSnmpLib.Full.dll MIT/X11
SharpSnmpLib.Android.dll MIT/X11
SharpSnmpLib.iOS.dll MIT/X11
snmpd.exe MIT/X11
All other samples public domain
========================== ====================

Release 8.0 and Below
---------------------
========================= ====================================================
Assembly Name Source Code License
========================= ====================================================
SharpSnmpLib.dll MIT/X11 (8.0), Lesser GPL (below 8.0)
SharpSnmpLib.Mib.dll BSD 3 Clause (7.5 and above), LGPL (below 7.5)
SharpSnmpLib.Optional.dll Removed in 8.0, Lesser GPL (below 8.0)
Browser.exe MIT/X11
Compiler.exe MIT/X11
snmpd.exe MIT/X11
All other samples public domain
========================= ====================================================

Dependencies
------------
#SNMP uses many other open source projects, and their licenses are described
below.

DockPanel Suite (MIT/X11) (c) Copyright 2007 Weifen Luo and other contributors
https://dockpanelsuite.com

System.Tuples (MIT/X11) (c) Copyright 2010 Adis Hamzic
https://systemtuples.codeplex.com
C# SNMP Library uses many other open source projects, and their licenses are
described below.

Mono.Options and Mono class library source files (MIT/X11) (c) Copyright 2008
Novell (c) Copyright 2009 Federico Di Gregorio (c) Copyright 2012 Xamarin Inc
Expand All @@ -79,36 +33,15 @@ RemObjects Mono Helpers (Lesser GPL) (c) Copyright 2010-2015 RemObjects
Software
https://github.com/remobjects/monohelpers

Microsoft Unity (MS-PL) (c) Copyright Microsoft
https://unity.codeplex.com

Apache log4net (Apache 2.0) (c) Copyright 2004-2015 The Apache Software
Foundation
http://logging.apache.org/log4net/

SharpDevelop TextEditor Control (Lesser GPL) (c) Copyright 2014 AlphaSierraPapa
for the SharpDevelop team
https://sharpdevelop.codeplex.com

ANTLR C# runtime (BSD 3 Clause) (c) Copyright 2010 Terence Parr
https://www.antlr3.org

Office 2007 ToolStrip Renderer (custom license) (c) Copyright 2006 Phil. Wright
http://www.codeproject.com/Articles/16666/Office-2007-ToolStrip-Renderer

Crad's Actions for Windows Forms (CPL) (c) Copyright 2006 Marco De Sanctis (c)
Copyright 2012 Lex Li
https://github.com/lextm/actionlistwinforms

Bouncy Castle C# API (MIT/X11) (c) 2000-2017 The Legion of the Bouncy Castle
Inc.
http://www.bouncycastle.org

Related Resources
-----------------
- `MIT/X11 License <http://www.opensource.org/licenses/mit-license.html>`_
- `Lesser GPL <http://www.opensource.org/licenses/lgpl-2.1.php>`_
- `MS-PL <https://opensource.org/licenses/MS-PL>`_
- `Apache 2.0 <https://opensource.org/licenses/Apache-2.0>`_
- `BSD 3 Clause <http://www.opensource.org/licenses/BSD-3-Clause>`_
- `CPL <http://www.opensource.org/licenses/cpl1.0>`_
21 changes: 4 additions & 17 deletions library/getting-started/signature.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Signature of Binaries
By `Lex Li`_

This article describes how to verify that you are using official releases of
#SNMP.
C# SNMP Library.

.. contents:: In this article:
:local:
Expand All @@ -23,22 +23,9 @@ You can use ``signtool`` and NuGet CLI to verify the signature. For example,
signtool verify /pa /q SharpSnmpLib.dll
nuget verify -All Lextm.SharpSnmpLib.nupkg
The certificate was issued by DigiCert, and its serial number is
``‎04 d8 f7 b9 b4 ba 0c 54 4b b4 8b 87 1c 3b 1c 26``, and its thumbprint is
``‎46 b0 b0 1a be ec 5a 04 1c a8 6e 6b 28 8a 86 6b c7 34 9e ad``.

Release 10.0.9 and Below
------------------------

As the files have no digital signature, you can only verify the strong names.

The assemblies were signed by a private key, and their ``PublicKeyToken``
should be ``4c00852d3788e005``. For example,

.. code-block:: text
SharpSnmpLib, Version=10.0.3.0, Culture=neutral,
PublicKeyToken=4c00852d3788e005
The certificate was issued by DigiCert, and its serial number may be
``‎04 d8 f7 b9 b4 ba 0c 54 4b b4 8b 87 1c 3b 1c 26``, and its thumbprint
may be ``‎46 b0 b0 1a be ec 5a 04 1c a8 6e 6b 28 8a 86 6b c7 34 9e ad``.

Related Resources
-----------------
Expand Down
Loading

0 comments on commit 655b1f6

Please sign in to comment.