python-netgear-switch-library 0.0.post341__tar.gz → 0.0.post343__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/PKG-INFO +1 -1
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/superpowers/specs/2026-08-02-snmp-surface-findings.md +66 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/_version.py +2 -2
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/aio_api.py +10 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/capabilities.py +15 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/sync_api.py +15 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_capabilities.py +4 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/.github/workflows/ci.yml +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/.github/workflows/deb.yml +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/.github/workflows/publish-pypi.yml +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/.gitignore +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/.readthedocs.yaml +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/CLAUDE.md +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/LICENSE +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/README.md +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/RELEASING.md +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/debian/changelog +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/debian/control +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/debian/copyright +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/debian/rules +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/debian/source/format +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/Makefile +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/_ext/filelinks.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/_ext/support_tables.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/_static/models/gs105pe.png +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/_static/models/gs110emx.png +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/_static/models/gs305ep.png +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/_static/models/gs728tpp.png +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/_static/models/gsm7228ps.jpg +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/_static/models/gsm7252ps.jpg +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/_static/models/m4300-16x.png +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/_static/models/m4300-24x.png +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/_static/ngsw.css +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/api/cli.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/api/core.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/api/facades.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/api/index.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/api/mcp.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/api/operations.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/api/protocols.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/api/transport.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/api/virtual.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/cli.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/conf.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/development.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/fake/index.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/fake/internals.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/fake/serving.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/fake/testing.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/guide/concepts.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/guide/configuration.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/guide/installation.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/guide/principles.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/guide/quickstart.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/guide/reading.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/guide/writing.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/index.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/mcp.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/models/gs105pe.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/models/gs110emx.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/models/gs305ep.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/models/gs728tpp.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/models/gsm7228ps.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/models/gsm7252ps.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/models/index.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/models/m4300-16x.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/models/m4300-24x.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/models/support.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/protocols/cli.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/protocols/http/cheetah-form.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/protocols/http/cheetah-v1.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/protocols/http/gambit.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/protocols/http/merge-hash-cgi.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/protocols/http/xml-api.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/protocols/http.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/protocols/index.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/protocols/nsdp.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/protocols/snmp.rst +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/superpowers/plans/2026-07-15-foundation.md +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/superpowers/plans/2026-07-17-slice-02-snmp-read-core.md +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/superpowers/plans/2026-07-17-slice-03-read-apis.md +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/superpowers/plans/2026-07-18-slice-04-snmp-write.md +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/superpowers/plans/2026-07-18-slice-05-nsdp.md +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/superpowers/plans/2026-07-18-slice-06-http.md +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/superpowers/plans/2026-07-18-slice-07-cli.md +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/superpowers/plans/2026-07-18-slice-08-packaging-ci.md +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/superpowers/plans/2026-07-23-gsm7252ps-http-xe-dialect.md +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/superpowers/specs/2026-07-15-netgear-control-library-design.md +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/superpowers/specs/2026-07-23-gsm7252ps-http-xe-dialect-design.md +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/packaging/apt-index.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/packaging/ci-build.sh +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/packaging/deb-version.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/pyproject.toml +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/__init__.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/_dispatch.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/cli/__init__.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/cli/capture.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/cli/context.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/cli/format.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/cli/main.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/cli/resolve.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/cli/safety.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/cli_read.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/cli_write.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/config.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/errors.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/http_read.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/http_write.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/mcp/__init__.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/mcp/server.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/models.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/nsdp_read.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/nsdp_write.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/__init__.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/cli/__init__.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/cli/commands.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/cli/parse.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/http/__init__.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/http/crypt.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/http/endpoints.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/http/forms.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/http/parse.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/http/session.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/http/types.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/nsdp/__init__.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/nsdp/auth.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/nsdp/client.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/nsdp/parsers.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/nsdp/protocol.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/nsdp/types.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/nsdp/write.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/snmp/__init__.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/snmp/client.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/snmp/oids.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/snmp/parse.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/protocols/snmp/write.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/py.typed +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/registry.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/snmp_read.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/snmp_write.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/transport/__init__.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/transport/aio/__init__.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/transport/aio/nsdp_udp.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/transport/aio/snmp_pysnmp.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/transport/cli/__init__.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/transport/cli/console.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/transport/cli/session.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/transport/cli/ssh.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/transport/cli/telnet.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/transport/http/__init__.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/transport/http/client.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/transport/sync/__init__.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/transport/sync/nsdp_udp.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/transport/sync/snmp_netsnmp_cli.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/virtual/__init__.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/virtual/cli_fastpath.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/virtual/faces/__init__.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/virtual/faces/cli.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/virtual/faces/http.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/virtual/faces/mibview.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/virtual/faces/nsdp.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/virtual/faces/snmp.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/virtual/seed.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/virtual/server.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/virtual/state.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/virtual/web.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/virtual/web_fastpath_vlan.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/virtual/web_fastpath_xui.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/virtual/web_gs105pe.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/virtual/web_gs110emx.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/virtual/web_gs110emx_templates.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/virtual/web_gs728tpp.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/virtual/web_gsm7228ps.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/virtual/web_gsm7252ps.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/src/netgear_switch/virtual/web_m4300.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/capture_parity.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/cli/test_capture.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/cli/test_cli_integration.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/cli/test_control_poe_port.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/cli/test_control_vlan_ip.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/cli/test_format.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/cli/test_main_framework.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/cli/test_new_commands.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/cli/test_op_coverage.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/cli/test_prompt_wiring.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/cli/test_read_commands.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/cli/test_resolve.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/cli/test_safety.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/cli/test_serve.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/conftest.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/equivalence.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/captures/gsm7228ps.json +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/captures/gsm7252ps.json +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/captures/m4300-16x.json +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/captures/m4300-24x.json +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/gsm7228ps_environment.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/gsm7228ps_lldp.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/gsm7228ps_mac_table.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/gsm7228ps_network.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/gsm7228ps_poe.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/gsm7228ps_port_all.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/gsm7228ps_show_version.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/gsm7228ps_vlan.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/gsm7228ps_vlan_brief.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/gsm7228ps_vlan_port_all.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/gsm7252ps_show_environment.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/gsm7252ps_show_interface_ethernet_1_0_1.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/gsm7252ps_show_lldp_remote_device_all.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/gsm7252ps_show_mac_addr_table.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/gsm7252ps_show_network.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/gsm7252ps_show_poe_port_info_all.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/gsm7252ps_show_port_all.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/gsm7252ps_show_version.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/gsm7252ps_show_vlan_90.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/gsm7252ps_show_vlan_brief.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/gsm7252ps_show_vlan_port_all.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_16x_show_environment.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_16x_show_interface_ethernet_1_0_1.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_16x_show_ip_management.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_16x_show_lldp_remote_device_all.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_16x_show_mac_addr_table.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_16x_show_poe_port_info_all.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_16x_show_port_all.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_16x_show_version.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_16x_show_vlan.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_16x_show_vlan_1.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_16x_show_vlan_4.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_16x_show_vlan_5.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_16x_show_vlan_port_all.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_24x_show_environment.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_24x_show_interface_ethernet_1_0_1.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_24x_show_ip_management.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_24x_show_lldp_remote_device_all.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_24x_show_mac_addr_table.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_24x_show_port_all.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_24x_show_version.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_24x_show_vlan.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_24x_show_vlan_5.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_24x_show_vlan_90.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/cli/m4300_24x_show_vlan_port_all.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs105pe_membership.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs105pe_portstats.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs105pe_pvid.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs105pe_status.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs105pe_switch_info.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs105pe_vlancfg.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs110emx_cf8021q.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs110emx_interface_stats.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs110emx_login.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs110emx_port_settings.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs110emx_pvid.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs110emx_redirect.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs110emx_sysinfo.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs110emx_vlanmembership.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs305ep_dashboard.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs305ep_login.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs305ep_membership.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs305ep_poestatus.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs305ep_portstats.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs305ep_pvid.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs305ep_vlancfg.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs728tpp_device_info_and_sensors.xml +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs728tpp_lldp.xml +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs728tpp_macs.xml +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs728tpp_mgmt_ip.xml +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs728tpp_poe.xml +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs728tpp_ports.xml +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs728tpp_pvids_membership.xml +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs728tpp_vlan_membership_per_vlan.xml +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gs728tpp_vlans.xml +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gsm7228ps_basicAddressTable.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gsm7228ps_ipConfiguration.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gsm7228ps_lldpRemoteInventory.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gsm7228ps_poeInterfaceConfiguration.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gsm7228ps_portPvidConfiguration.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gsm7228ps_portStatistics.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gsm7228ps_portsConfiguration.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gsm7228ps_sysInfo.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gsm7228ps_vlanPortCfg_vlan5.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gsm7228ps_vlanStatus.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gsm7252ps_basicAddressTable.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gsm7252ps_ipConfiguration.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gsm7252ps_lldpRemoteInventory.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gsm7252ps_login.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gsm7252ps_poeInterfaceConfiguration.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gsm7252ps_portPvidConfiguration.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gsm7252ps_portStatistics.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gsm7252ps_portsConfiguration.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gsm7252ps_sysInfo.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gsm7252ps_vlanPortCfg_vlan1.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gsm7252ps_vlanPortCfg_vlan141.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/gsm7252ps_vlanStatus.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/m4300_16x_lldpRemoteInventory.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/m4300_16x_mgmtVlanIpv4Configuration.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/m4300_16x_poeInterfaceConfiguration.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/m4300_16x_portsConfiguration.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/m4300_16x_vlanportcfg_vlan4.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/m4300_24x_poeInterfaceConfiguration.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/m4300_addresstable.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/m4300_lldpRemoteInventory.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/m4300_mgmtVlanIpv4Configuration.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/m4300_ports.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/m4300_portstats.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/m4300_pvid.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/m4300_sysinfo.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/m4300_vlanportcfg_vlan1.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/http/m4300_vlanstatus.html +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/snmp/gsm7252ps_fans.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/snmp/gsm7252ps_ifhighspeed.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/snmp/gsm7252ps_ifoperstatus.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/fixtures/snmp/gsm7252ps_psu.txt +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/http_specs.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/protocols/cli/test_cli_parse.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/protocols/http/test_crypt.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/protocols/http/test_endpoints.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/protocols/http/test_forms.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/protocols/http/test_parse.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/protocols/nsdp/test_auth.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/protocols/nsdp/test_parsers.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/protocols/nsdp/test_protocol.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/protocols/nsdp/test_write_frame.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/protocols/snmp/test_client.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/protocols/snmp/test_oids.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/protocols/snmp/test_parse_lldp_macs.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/protocols/snmp/test_parse_mgmt_ip.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/protocols/snmp/test_parse_poe_sensors.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/protocols/snmp/test_parse_ports.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/protocols/snmp/test_parse_system_info.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/protocols/snmp/test_parse_vlans.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/protocols/snmp/test_write_encode.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_aio_api.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_cli_read.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_cli_vlan_write.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_cli_write.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_config.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_cross_backend_equivalence.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_deb_version.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_dispatch.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_docs_coverage.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_errors.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_facade_equivalence.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_http_dispatch.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_http_equivalence.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_http_read.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_http_vlan_membership.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_http_write.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_http_xui_writes.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_import.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_mcp_server.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_models.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_models_snmp_read.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_nsdp_integration.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_nsdp_read.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_nsdp_write.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_public_api.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_quality_gates.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_registry.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_snmp_integration.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_snmp_read.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_snmp_write.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_sync_api.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_version.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/test_write_equivalence.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/transport/_fastpath_fake.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/transport/test_cli_console.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/transport/test_cli_scp_cert.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/transport/test_cli_telnet.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/transport/test_http_client.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/transport/test_nsdp_udp_sync.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/transport/test_set_transport.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/transport/test_snmp_netsnmp_cli.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/transport/test_snmp_pysnmp.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/transport/test_value_parity.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/virtual/test_cli_cross_backend.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/virtual/test_cli_gsm7228ps_parity.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/virtual/test_gsm7228ps_seed.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/virtual/test_hostname.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/virtual/test_m4300_seeds.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/virtual/test_mibview.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/virtual/test_mutable_state.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/virtual/test_nsdp_state.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/virtual/test_serve_daemon.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/virtual/test_snmp_write_face.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/virtual/test_state_seed.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/virtual/test_switchport_vlan_write.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/virtual/test_virtual_http_face.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/virtual/test_virtual_nsdp_face.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/virtual/test_virtual_snmp_face.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/tests/virtual/test_web_projection.py +0 -0
- {python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/uv.lock +0 -0
{python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: python-netgear-switch-library
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.post343
|
|
4
4
|
Summary: Python library and CLI to query and control Netgear switches over SNMP, NSDP and HTTP.
|
|
5
5
|
Author-email: Tim Ansell <me@mith.ro>
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -149,3 +149,69 @@ user**, a different thing from a local login account. They must not be conflated
|
|
|
149
149
|
- Port speed/duplex **configuration** (as opposed to `ifHighSpeed`, which is the
|
|
150
150
|
negotiated rate). EtherLike-MIB `dot3` at `1.3.6.1.2.1.10.7` carries 1416
|
|
151
151
|
varbinds on the S3300 and is the obvious candidate for duplex status.
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
## Local users and service protocols — CLI, measured 2026-08-02
|
|
155
|
+
|
|
156
|
+
Captured from m4300-24x (10.1.5.13) and gsm7252ps (10.1.5.22). Three things
|
|
157
|
+
here would have been got wrong by assuming, which is why they are recorded
|
|
158
|
+
before any code is written against them.
|
|
159
|
+
|
|
160
|
+
### `show users` — two users, and the access-mode WORDS differ by firmware
|
|
161
|
+
|
|
162
|
+
Both switches carry `admin` and `guest`, and both print the same five columns
|
|
163
|
+
(User Name, User Access Mode, three SNMPv3 columns). The **values** are not the
|
|
164
|
+
same vocabulary:
|
|
165
|
+
|
|
166
|
+
| Switch | admin | guest |
|
|
167
|
+
|---|---|---|
|
|
168
|
+
| m4300-24x | `Privilege-15` | `Privilege-1` |
|
|
169
|
+
| gsm7252ps | `Read/Write` | `Read Only` |
|
|
170
|
+
|
|
171
|
+
A parser mapping the access-mode column to an enum must accept both spellings.
|
|
172
|
+
Matching on `Privilege-N` alone would silently fail on the gsm7252ps and vice
|
|
173
|
+
versa — the same shape of defect as the `show logging hosts` column count.
|
|
174
|
+
|
|
175
|
+
`show users long` prints just the names, on both.
|
|
176
|
+
|
|
177
|
+
### `show telnet` is OUTBOUND telnet, not the telnet server
|
|
178
|
+
|
|
179
|
+
Outbound Telnet Login Timeout (minutes)........ 5
|
|
180
|
+
Maximum Number of Outbound Telnet Sessions..... 5
|
|
181
|
+
Allow New Outbound Telnet Sessions............. Yes
|
|
182
|
+
|
|
183
|
+
Every field is about the switch acting as a telnet **client**. None of it
|
|
184
|
+
reports whether the inbound telnet server — the thing this library's TELNET
|
|
185
|
+
backend connects to — is enabled. Reading "Allow New Outbound Telnet Sessions:
|
|
186
|
+
Yes" as "telnet is on" would be wrong in exactly the way that looks right.
|
|
187
|
+
The inbound server state has NOT been located yet.
|
|
188
|
+
|
|
189
|
+
### `show ip ssh` works, but its field set differs by firmware
|
|
190
|
+
|
|
191
|
+
Administrative Mode: .......................... Enabled
|
|
192
|
+
SSH Port: ..................................... 22 <- m4300 ONLY
|
|
193
|
+
Protocol Levels: .............................. Version 2
|
|
194
|
+
Max SSH Sessions Allowed: ..................... 5
|
|
195
|
+
|
|
196
|
+
The gsm7252ps prints **no `SSH Port` line at all**, and reports its protocol
|
|
197
|
+
levels as `Versions 1 and 2` against the m4300's `Version 2`. A reader must
|
|
198
|
+
treat the port as optional rather than assume every FASTPATH image reports it.
|
|
199
|
+
|
|
200
|
+
### HTTP has no `show ip http server`
|
|
201
|
+
|
|
202
|
+
Both switches answer `% Invalid input detected` to `show ip http server` and to
|
|
203
|
+
`show ip http secure-server`. The command that reports web-server state has not
|
|
204
|
+
been found yet; it is not either of those.
|
|
205
|
+
|
|
206
|
+
### What this means for implementation
|
|
207
|
+
|
|
208
|
+
`get_users` is implementable on the FASTPATH CLI today, across both firmwares,
|
|
209
|
+
provided the access-mode parser accepts both vocabularies. Note the SNMP side
|
|
210
|
+
disagrees about scope: the S3300's vendor user table (`4526.11.1.2.1.3`) held
|
|
211
|
+
only ONE user, while its CLI shows two — so the two backends are not reporting
|
|
212
|
+
the same set, and that must be resolved before `get_users` is registered as a
|
|
213
|
+
cross-backend operation.
|
|
214
|
+
|
|
215
|
+
Service protocols are NOT implementable yet: SSH state is readable, inbound
|
|
216
|
+
telnet state is unlocated, and HTTP state is unlocated. Recording that as three
|
|
217
|
+
separate unknowns rather than one blocked feature.
|
|
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
|
|
|
18
18
|
commit_id: str | None
|
|
19
19
|
__commit_id__: str | None
|
|
20
20
|
|
|
21
|
-
__version__ = version = '0.0.
|
|
22
|
-
__version_tuple__ = version_tuple = (0, 0, '
|
|
21
|
+
__version__ = version = '0.0.post343'
|
|
22
|
+
__version_tuple__ = version_tuple = (0, 0, 'post343')
|
|
23
23
|
|
|
24
24
|
__commit_id__ = commit_id = None
|
|
@@ -645,6 +645,16 @@ class AsyncSwitch:
|
|
|
645
645
|
lambda w: w.clear_poe_fault(port, force=force, timeouts=timeouts), backend
|
|
646
646
|
)
|
|
647
647
|
|
|
648
|
+
async def set_hostname(
|
|
649
|
+
self, name: str, *, force: bool = False, backend: Backend | None = None
|
|
650
|
+
) -> None:
|
|
651
|
+
"""Async twin of ``SyncSwitch.set_hostname`` -- see there.
|
|
652
|
+
|
|
653
|
+
Note AsyncSwitch has no CLI backend at all, so on this facade the write
|
|
654
|
+
resolves over SNMP or not at all.
|
|
655
|
+
"""
|
|
656
|
+
await self._write(lambda w: w.set_hostname(name, force=force), backend)
|
|
657
|
+
|
|
648
658
|
async def set_mgmt_ip(
|
|
649
659
|
self,
|
|
650
660
|
address: str,
|
|
@@ -149,6 +149,21 @@ WRITE_OPERATIONS: tuple[Operation, ...] = (
|
|
|
149
149
|
Operation("create_vlan", OperationKind.WRITE, "Create a VLAN"),
|
|
150
150
|
Operation("delete_vlan", OperationKind.WRITE, "Delete a VLAN"),
|
|
151
151
|
Operation("set_mgmt_ip", OperationKind.WRITE, "Set the management IP/mask/gateway"),
|
|
152
|
+
Operation(
|
|
153
|
+
"set_hostname",
|
|
154
|
+
OperationKind.WRITE,
|
|
155
|
+
"Set the switch's host name",
|
|
156
|
+
# SNMP (sysName, confirmed writable on all five reachable switches) and
|
|
157
|
+
# the FASTPATH CLI (`hostname`) are what the library writes today.
|
|
158
|
+
#
|
|
159
|
+
# This restriction makes a REAL GAP visible rather than hiding it: the
|
|
160
|
+
# Plus models have neither backend, so this library currently cannot
|
|
161
|
+
# rename a gs110emx, gs105pe or gs305ep at all. Both routes exist on the
|
|
162
|
+
# devices -- NSDP carries a writable HOSTNAME tag and two web UIs expose
|
|
163
|
+
# a switch_name field -- so this is unbuilt work, not a device limit,
|
|
164
|
+
# and the support table should show the hole until it is filled.
|
|
165
|
+
backends=frozenset({Backend.SNMP}) | _CLI_BACKENDS,
|
|
166
|
+
),
|
|
152
167
|
Operation(
|
|
153
168
|
"upload_certificate",
|
|
154
169
|
OperationKind.WRITE,
|
|
@@ -795,6 +795,21 @@ class SyncSwitch:
|
|
|
795
795
|
lambda w: w.clear_poe_fault(port, force=force, timeouts=timeouts), backend
|
|
796
796
|
)
|
|
797
797
|
|
|
798
|
+
def set_hostname(
|
|
799
|
+
self, name: str, *, force: bool = False, backend: Backend | None = None
|
|
800
|
+
) -> None:
|
|
801
|
+
"""Set the switch's host name, and read it back to confirm.
|
|
802
|
+
|
|
803
|
+
Written over SNMP (``sysName``) or the FASTPATH CLI (``hostname``),
|
|
804
|
+
whichever backend resolves. Not force-gated: renaming cannot strand a
|
|
805
|
+
switch and is reversible by writing the old name back, unlike
|
|
806
|
+
``set_mgmt_ip``, which drops the session that issues it.
|
|
807
|
+
|
|
808
|
+
The Plus models cannot be renamed by this library yet -- they have
|
|
809
|
+
neither backend, and the NSDP and web-UI routes are unbuilt.
|
|
810
|
+
"""
|
|
811
|
+
self._write(lambda w: w.set_hostname(name, force=force), backend)
|
|
812
|
+
|
|
798
813
|
def set_mgmt_ip(
|
|
799
814
|
self,
|
|
800
815
|
address: str,
|
|
@@ -93,6 +93,10 @@ _WRITE_ARGS: dict[str, tuple[tuple[Any, ...], dict[str, Any]]] = {
|
|
|
93
93
|
"create_vlan": ((4008, "capcheck"), {}),
|
|
94
94
|
"delete_vlan": ((4008,), {}),
|
|
95
95
|
"set_mgmt_ip": (("10.99.0.2", "255.255.255.0", "10.99.0.1"), {}),
|
|
96
|
+
# A non-empty name: set_hostname refuses an empty one outright, because
|
|
97
|
+
# `hostname` with no argument is rejected by the device itself and clearing
|
|
98
|
+
# a name is a different command (`no hostname`) that is not implemented.
|
|
99
|
+
"set_hostname": (("capcheck",), {}),
|
|
96
100
|
}
|
|
97
101
|
|
|
98
102
|
#: Not driven. ``upload_certificate_scp`` runs a multi-command deploy sequence
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/.gitignore
RENAMED
|
File without changes
|
|
File without changes
|
{python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/CLAUDE.md
RENAMED
|
File without changes
|
{python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/LICENSE
RENAMED
|
File without changes
|
{python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/README.md
RENAMED
|
File without changes
|
{python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/RELEASING.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/debian/rules
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/cli.rst
RENAMED
|
File without changes
|
{python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/conf.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_netgear_switch_library-0.0.post341 → python_netgear_switch_library-0.0.post343}/docs/mcp.rst
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|