-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathsetup.py
89 lines (80 loc) · 3.08 KB
/
setup.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
# Copyright (c) 2019-2024 Riverbed Technology, Inc.
#
# This software is licensed under the terms and conditions of the MIT License
# accompanying the software ("License"). This software is distributed "AS IS"
# as set forth in the License.
"""
steelscript.packets
====================
Cython implemented classes for reading and, in most cases writing pcap, pcapng
Ethernet, IP, TCP, and UDP. Plus other packet data like MPLS, ARP and a subset
of SMB (at time of writing).
"""
from setuptools import setup, Extension
try:
from setuptools import find_packages
except ImportError:
raise ImportError(
'The setuptools package is required to install this library. See '
'"https://pypi.python.org/pypi/setuptools#installation-instructions" '
'for further instructions.'
)
install_requires = (
'steelscript>=24.2.0',
'tzlocal',
'Cython'
)
# Build scripts automatically
scripts = {'console_scripts': [
'netflow-player = steelscript.packets.commands.netflow_player:main'
]}
setup_args = {
'name': 'steelscript.packets',
'version': '24.10.1',
'author': 'Riverbed Technology',
'author_email': '[email protected]',
'url': 'http://pythonhosted.org/steelscript',
'license': 'MIT',
'description': 'Base PCAP and inet packet classes.',
'long_description': __doc__,
'packages': find_packages(exclude=('gitpy_versioning',)),
'zip_safe': False,
'install_requires': install_requires,
'extras_require': None,
'test_suite': '',
'include_package_data': True,
'platforms': 'Linux, Mac OS, Windows',
'classifiers': [
'Intended Audience :: Developers',
'Intended Audience :: Information Technology',
'Intended Audience :: System Administrators',
'License :: OSI Approved :: MIT License',
'Programming Language :: Python :: 3.12',
'Topic :: System :: Networking',
],
'setup_requires': [
'cython',
'setuptools>=18.0'
],
'ext_modules': [
Extension("steelscript.packets.core.pcap",
sources=["steelscript/packets/core/pcap.pyx"],
libraries=["pcap"],
cython_directives={"embedsignature": True,
"binding": True}),
Extension("steelscript.packets.core.inetpkt",
sources=["steelscript/packets/core/inetpkt.pyx"],
cython_directives={"embedsignature": True,
"binding": True}),
Extension("steelscript.packets.query.pcap_query",
sources=["steelscript/packets/query/pcap_query.pyx"],
cython_directives={"embedsignature": True,
"binding": True}),
Extension("steelscript.packets.protos.dns",
sources=["steelscript/packets/protos/dns.pyx"],
cython_directives={"embedsignature": True,
"binding": True}),
],
'entry_points': scripts
}
setup(**setup_args)