Skip to content

Commit a7e842f

Browse files
Add ReadMe and Notice file (#21)
* Add ReadMe and Notice file * Small fixes to readme
1 parent e599a56 commit a7e842f

File tree

3 files changed

+306
-5
lines changed

3 files changed

+306
-5
lines changed

NOTICE

+204
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,204 @@
1+
--------------------- START OF THIRD PARTY NOTICE -----------------------------
2+
3+
NOTICES AND INFORMATION
4+
Do Not Translate or Localize
5+
6+
This software incorporates material from third parties.
7+
8+
Notwithstanding any other terms, you may reverse engineer this software to the
9+
extent required to debug changes to any libraries licensed under the GNU Lesser
10+
General Public License.
11+
12+
Third Party Programs: The software may include third party programs that Seagate,
13+
not the third party, licenses to you under this agreement. Notices, if any, for the
14+
third party programs are included for your information only.
15+
---------------------------------------------------------------------------------------
16+
17+
18+
19+
20+
21+
****************************************************************************
22+
23+
============================================================================
24+
>>> github.com/openssl/openssl
25+
==============================================================================
26+
27+
Apache License
28+
Version 2.0, January 2004
29+
https://www.apache.org/licenses/
30+
31+
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
32+
33+
1. Definitions.
34+
35+
"License" shall mean the terms and conditions for use, reproduction,
36+
and distribution as defined by Sections 1 through 9 of this document.
37+
38+
"Licensor" shall mean the copyright owner or entity authorized by
39+
the copyright owner that is granting the License.
40+
41+
"Legal Entity" shall mean the union of the acting entity and all
42+
other entities that control, are controlled by, or are under common
43+
control with that entity. For the purposes of this definition,
44+
"control" means (i) the power, direct or indirect, to cause the
45+
direction or management of such entity, whether by contract or
46+
otherwise, or (ii) ownership of fifty percent (50%) or more of the
47+
outstanding shares, or (iii) beneficial ownership of such entity.
48+
49+
"You" (or "Your") shall mean an individual or Legal Entity
50+
exercising permissions granted by this License.
51+
52+
"Source" form shall mean the preferred form for making modifications,
53+
including but not limited to software source code, documentation
54+
source, and configuration files.
55+
56+
"Object" form shall mean any form resulting from mechanical
57+
transformation or translation of a Source form, including but
58+
not limited to compiled object code, generated documentation,
59+
and conversions to other media types.
60+
61+
"Work" shall mean the work of authorship, whether in Source or
62+
Object form, made available under the License, as indicated by a
63+
copyright notice that is included in or attached to the work
64+
(an example is provided in the Appendix below).
65+
66+
"Derivative Works" shall mean any work, whether in Source or Object
67+
form, that is based on (or derived from) the Work and for which the
68+
editorial revisions, annotations, elaborations, or other modifications
69+
represent, as a whole, an original work of authorship. For the purposes
70+
of this License, Derivative Works shall not include works that remain
71+
separable from, or merely link (or bind by name) to the interfaces of,
72+
the Work and Derivative Works thereof.
73+
74+
"Contribution" shall mean any work of authorship, including
75+
the original version of the Work and any modifications or additions
76+
to that Work or Derivative Works thereof, that is intentionally
77+
submitted to Licensor for inclusion in the Work by the copyright owner
78+
or by an individual or Legal Entity authorized to submit on behalf of
79+
the copyright owner. For the purposes of this definition, "submitted"
80+
means any form of electronic, verbal, or written communication sent
81+
to the Licensor or its representatives, including but not limited to
82+
communication on electronic mailing lists, source code control systems,
83+
and issue tracking systems that are managed by, or on behalf of, the
84+
Licensor for the purpose of discussing and improving the Work, but
85+
excluding communication that is conspicuously marked or otherwise
86+
designated in writing by the copyright owner as "Not a Contribution."
87+
88+
"Contributor" shall mean Licensor and any individual or Legal Entity
89+
on behalf of whom a Contribution has been received by Licensor and
90+
subsequently incorporated within the Work.
91+
92+
2. Grant of Copyright License. Subject to the terms and conditions of
93+
this License, each Contributor hereby grants to You a perpetual,
94+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
95+
copyright license to reproduce, prepare Derivative Works of,
96+
publicly display, publicly perform, sublicense, and distribute the
97+
Work and such Derivative Works in Source or Object form.
98+
99+
3. Grant of Patent License. Subject to the terms and conditions of
100+
this License, each Contributor hereby grants to You a perpetual,
101+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
102+
(except as stated in this section) patent license to make, have made,
103+
use, offer to sell, sell, import, and otherwise transfer the Work,
104+
where such license applies only to those patent claims licensable
105+
by such Contributor that are necessarily infringed by their
106+
Contribution(s) alone or by combination of their Contribution(s)
107+
with the Work to which such Contribution(s) was submitted. If You
108+
institute patent litigation against any entity (including a
109+
cross-claim or counterclaim in a lawsuit) alleging that the Work
110+
or a Contribution incorporated within the Work constitutes direct
111+
or contributory patent infringement, then any patent licenses
112+
granted to You under this License for that Work shall terminate
113+
as of the date such litigation is filed.
114+
115+
4. Redistribution. You may reproduce and distribute copies of the
116+
Work or Derivative Works thereof in any medium, with or without
117+
modifications, and in Source or Object form, provided that You
118+
meet the following conditions:
119+
120+
(a) You must give any other recipients of the Work or
121+
Derivative Works a copy of this License; and
122+
123+
(b) You must cause any modified files to carry prominent notices
124+
stating that You changed the files; and
125+
126+
(c) You must retain, in the Source form of any Derivative Works
127+
that You distribute, all copyright, patent, trademark, and
128+
attribution notices from the Source form of the Work,
129+
excluding those notices that do not pertain to any part of
130+
the Derivative Works; and
131+
132+
(d) If the Work includes a "NOTICE" text file as part of its
133+
distribution, then any Derivative Works that You distribute must
134+
include a readable copy of the attribution notices contained
135+
within such NOTICE file, excluding those notices that do not
136+
pertain to any part of the Derivative Works, in at least one
137+
of the following places: within a NOTICE text file distributed
138+
as part of the Derivative Works; within the Source form or
139+
documentation, if provided along with the Derivative Works; or,
140+
within a display generated by the Derivative Works, if and
141+
wherever such third-party notices normally appear. The contents
142+
of the NOTICE file are for informational purposes only and
143+
do not modify the License. You may add Your own attribution
144+
notices within Derivative Works that You distribute, alongside
145+
or as an addendum to the NOTICE text from the Work, provided
146+
that such additional attribution notices cannot be construed
147+
as modifying the License.
148+
149+
You may add Your own copyright statement to Your modifications and
150+
may provide additional or different license terms and conditions
151+
for use, reproduction, or distribution of Your modifications, or
152+
for any such Derivative Works as a whole, provided Your use,
153+
reproduction, and distribution of the Work otherwise complies with
154+
the conditions stated in this License.
155+
156+
5. Submission of Contributions. Unless You explicitly state otherwise,
157+
any Contribution intentionally submitted for inclusion in the Work
158+
by You to the Licensor shall be under the terms and conditions of
159+
this License, without any additional terms or conditions.
160+
Notwithstanding the above, nothing herein shall supersede or modify
161+
the terms of any separate license agreement you may have executed
162+
with Licensor regarding such Contributions.
163+
164+
6. Trademarks. This License does not grant permission to use the trade
165+
names, trademarks, service marks, or product names of the Licensor,
166+
except as required for reasonable and customary use in describing the
167+
origin of the Work and reproducing the content of the NOTICE file.
168+
169+
7. Disclaimer of Warranty. Unless required by applicable law or
170+
agreed to in writing, Licensor provides the Work (and each
171+
Contributor provides its Contributions) on an "AS IS" BASIS,
172+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
173+
implied, including, without limitation, any warranties or conditions
174+
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
175+
PARTICULAR PURPOSE. You are solely responsible for determining the
176+
appropriateness of using or redistributing the Work and assume any
177+
risks associated with Your exercise of permissions under this License.
178+
179+
8. Limitation of Liability. In no event and under no legal theory,
180+
whether in tort (including negligence), contract, or otherwise,
181+
unless required by applicable law (such as deliberate and grossly
182+
negligent acts) or agreed to in writing, shall any Contributor be
183+
liable to You for damages, including any direct, indirect, special,
184+
incidental, or consequential damages of any character arising as a
185+
result of this License or out of the use or inability to use the
186+
Work (including but not limited to damages for loss of goodwill,
187+
work stoppage, computer failure or malfunction, or any and all
188+
other commercial damages or losses), even if such Contributor
189+
has been advised of the possibility of such damages.
190+
191+
9. Accepting Warranty or Additional Liability. While redistributing
192+
the Work or Derivative Works thereof, You may choose to offer,
193+
and charge a fee for, acceptance of support, warranty, indemnity,
194+
or other liability obligations and/or rights consistent with this
195+
License. However, in accepting such obligations, You may act only
196+
on Your own behalf and on Your sole responsibility, not on behalf
197+
of any other Contributor, and only if You agree to indemnify,
198+
defend, and hold each Contributor harmless for any liability
199+
incurred by, or claims asserted against, such Contributor by reason
200+
of your accepting any such warranty or additional liability.
201+
202+
END OF TERMS AND CONDITIONS
203+
204+
****************************************************************************

README.md

+96-2
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,96 @@
1-
# nx-lyve-cloud-plugin
2-
Cloud storage plugin for Network Optix Nx Meta VMS
1+
# Nx-Lyve-Cloud-Plugin
2+
3+
Nx-Lyve-Cloud-Plugin is a cloud storage plugin for Network Optix VMS's including Nx Witness and Digital Watchdog
4+
Spectrum. This plugin allows the user to easily configure their cloud and create a local mount of their cloud on their
5+
system. This mount can then be used as a backup location for video recordings in the VMS. The plugins utilizes
6+
[cloudfuse](https://github.com/Seagate/cloudfuse) to create and manage the local mount.
7+
8+
## Building the Nx-Lyve-Cloud-Plugin
9+
10+
The following are instructions to build our plugin from source.
11+
12+
The following are the currently supported platforms and architectures:
13+
14+
- Windows 10, 11 x64 (Microsoft Visual Studio).
15+
- Linux Ubuntu 18.04, 20.04, 22.04, 24.04 (GCC or Clang) x64
16+
17+
### Ubuntu
18+
19+
You should have a modern version of GCC or Clang and cmake installed on your system.
20+
21+
#### 1. Clone GitHub repository
22+
23+
```bash
24+
git clone https://github.com/Seagate/nx-lyve-cloud-plugin
25+
cd nx-lyve-cloud-plugin
26+
```
27+
28+
#### 2. Run the build script
29+
30+
Run one of the following to build the plugin.
31+
32+
The following will default to your OS selected C compiler.
33+
34+
```bash
35+
./build_samples.sh --no-tests
36+
```
37+
38+
The following will use gcc. You may also replace gcc/g++ with clang/clang++.
39+
40+
```bash
41+
./build_samples.sh --no-tests -DCMAKE_CXX_COMPILER=gcc -DCMAKE_C_COMPILER=g++
42+
```
43+
44+
After running the script the resulting .so file can be found at
45+
`../nx-lyve-cloud-plugin-build/cloudfuse_plugin/libcloudfuse_plugin.so`.
46+
47+
### Windows
48+
49+
You should have a modern version of MSVC from Microsoft Visual Studio, cmake, and vcpkg installed on your system.
50+
51+
#### 1. Clone GitHub repository
52+
53+
```powershell
54+
git clone https://github.com/Seagate/nx-lyve-cloud-plugin
55+
cd nx-lyve-cloud-plugin
56+
git checkout -b main origin/main
57+
```
58+
59+
#### 2. Setup VCPKG with Cmake
60+
61+
Assuming you already have cmake installed and vcpkg, then we need to set the cmake toolchain to use the vcpkg toolchain.
62+
63+
```powershell
64+
$Env:VCPKG_ROOT = "Path/To/Vcpkg"
65+
```
66+
67+
#### 3. Run the build script
68+
69+
Run the following to build the plugin.
70+
71+
```powershell
72+
./build_samples.bat --no-tests --debug
73+
```
74+
75+
After running the script the resulting `.so` file can be found at
76+
`..\nx-lyve-cloud-plugin-build\cloudfuse_plugin\Debug\cloudfuse_plugin.dll`.
77+
78+
## Installing the Nx-Lyve-Cloud-Plugin
79+
80+
To install the plugin, copy the `.dll` or `.so` file to the plugins folder of the VMS.
81+
82+
Additionally, you need to install cloudfuse on your system. Follow install instructions for cloudfuse
83+
[here](https://github.com/Seagate/cloudfuse).
84+
85+
After installing cloudfuse, and copying the plugin file, restart the VMS and the plugin will appear in the System
86+
Administration settings windows. Then you can enter your S3 credentials and a mount will appear on the system connected
87+
to the cloud. This can be selected as a backup mount and video files will be backed up to the cloud.
88+
89+
## License
90+
91+
Most of the project is licensed under the [Mozilla Public License](https://www.mozilla.org/en-US/MPL/2.0/) and the rest
92+
is under MIT; check the specific license in each file to determine which is which.
93+
94+
### Third-Party Notices
95+
96+
See [notices](./NOTICE) for third party license notices.

SECURITY.md

+6-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# Nx-Lyve-Cloud-Plugin Security Policy
22

3-
We take security seriously. If you find any security vulnerabilities in any of the Nx-Lyve-Cloud-Plugin source code, or other binary tools, please report it to us as described below.
3+
We take security seriously. If you find any security vulnerabilities in any of the Nx-Lyve-Cloud-Plugin source code, or
4+
other binary tools, please report it to us as described below.
45

56
## Reporting Security Issues
67

@@ -9,11 +10,13 @@ We take security seriously. If you find any security vulnerabilities in any of t
910
If you have questions or general concerns, please email us at [ADD_EMAIL_ADDRESS](mailto: ADD_EMAIL_ADDRESS).
1011
-->
1112

12-
To report an actual vulnerability, please use the form available at "[Seagate Responsible Vulnerability Disclosure Policy](https://www.seagate.com/legal-privacy/responsible-vulnerability-disclosure-policy/)"
13+
To report an actual vulnerability, please use the form available at "[Seagate Responsible Vulnerability Disclosure
14+
Policy](https://www.seagate.com/legal-privacy/responsible-vulnerability-disclosure-policy/)"
1315

1416
### Reporting Format
1517

16-
To make your reporting meaningful and help us understand the nature and scope of the issue, please include as much information as possible.
18+
To make your reporting meaningful and help us understand the nature and scope of the issue, please include as much
19+
information as possible.
1720

1821
### Preferred Languages
1922

0 commit comments

Comments
 (0)