go.mondoo.com/cnquery@v0.0.0-20231005093811-59568235f6ea/providers/os/resources/python/testdata/linux.toml (about)

     1  [files."/usr/lib"]
     2  content = """python3.11"""
     3  stat.isdir = true
     4  
     5  [files."/usr/lib/python3.11"]
     6  content = """site-packages"""
     7  stat.isdir = true
     8  
     9  [files."/usr/lib/python3.11/site-packages"]
    10  content = """python_ftp_server-1.3.17.dist-info
    11  pyftpdlib-1.5.7-py3.11.egg-info"""
    12  stat.isdir = true
    13  
    14  [files."/usr/lib/python3.11/site-packages/pyftpdlib-1.5.7-py3.11.egg-info"]
    15  stat.isdir = true
    16  content = """PKG-INFO"""
    17  
    18  [files."/usr/lib/python3.11/site-packages/pyftpdlib-1.5.7-py3.11.egg-info/PKG-INFO"]
    19  content = """Metadata-Version: 2.1
    20  Name: pyftpdlib
    21  Version: 1.5.7
    22  Summary: Very fast asynchronous FTP server library
    23  Home-page: https://github.com/giampaolo/pyftpdlib/
    24  Author: Giampaolo Rodola'
    25  Author-email: g.rodola@gmail.com
    26  License: MIT
    27  Keywords: ftp,ftps,server,ftpd,daemon,python,ssl,sendfile,asynchronous,nonblocking,eventdriven,rfc959,rfc1123,rfc2228,rfc2428,rfc2640,rfc3659
    28  Platform: Platform Independent
    29  Classifier: Development Status :: 5 - Production/Stable
    30  Classifier: Environment :: Console
    31  Classifier: Intended Audience :: Developers
    32  Classifier: Intended Audience :: System Administrators
    33  Classifier: License :: OSI Approved :: MIT License
    34  Classifier: Operating System :: OS Independent
    35  Classifier: Programming Language :: Python
    36  Classifier: Topic :: Internet :: File Transfer Protocol (FTP)
    37  Classifier: Topic :: Software Development :: Libraries :: Python Modules
    38  Classifier: Topic :: System :: Filesystems
    39  Classifier: Programming Language :: Python
    40  Classifier: Programming Language :: Python :: 2
    41  Classifier: Programming Language :: Python :: 3
    42  Provides-Extra: ssl
    43  License-File: LICENSE
    44  
    45  |  |downloads| |stars| |forks| |contributors| |coverage|
    46  |  |version| |packages| |license|
    47  |  |github-actions| |appveyor| |doc| |twitter|
    48  
    49  .. |downloads| image:: https://img.shields.io/pypi/dm/pyftpdlib.svg
    50      :target: https://pepy.tech/project/pyftpdlib
    51      :alt: Downloads
    52  
    53  .. |stars| image:: https://img.shields.io/github/stars/giampaolo/pyftpdlib.svg
    54      :target: https://github.com/giampaolo/pyftpdlib/stargazers
    55      :alt: Github stars
    56  
    57  .. |forks| image:: https://img.shields.io/github/forks/giampaolo/pyftpdlib.svg
    58      :target: https://github.com/giampaolo/pyftpdlib/network/members
    59      :alt: Github forks
    60  
    61  .. |contributors| image:: https://img.shields.io/github/contributors/giampaolo/pyftpdlib.svg
    62      :target: https://github.com/giampaolo/pyftpdlib/graphs/contributors
    63      :alt: Contributors
    64  
    65  .. |github-actions| image:: https://github.com/giampaolo/pyftpdlib/actions/workflows/tests.yml/badge.svg
    66      :target: https://github.com/giampaolo/pyftpdlib/actions/workflows/tests.yml
    67      :alt: Linux, macOS, Windows tests
    68  
    69  .. |appveyor| image:: https://img.shields.io/appveyor/build/giampaolo/pyftpdlib/master.svg?label=windows%20tests
    70      :target: https://ci.appveyor.com/project/giampaolo/pyftpdlib
    71      :alt: Windows tests (Appveyor)
    72  
    73  .. |coverage| image:: https://coveralls.io/repos/github/giampaolo/pyftpdlib/badge.svg?branch=master
    74      :target: https://coveralls.io/github/giampaolo/pyftpdlib?branch=master
    75      :alt: Test coverage (coverall.io)
    76  
    77  .. |doc| image:: https://readthedocs.org/projects/pyftpdlib/badge/?version=latest
    78      :target: https://pyftpdlib.readthedocs.io/en/latest/
    79      :alt: Documentation Status
    80  
    81  .. |version| image:: https://img.shields.io/pypi/v/pyftpdlib.svg?label=pypi
    82      :target: https://pypi.org/project/pyftpdlib
    83      :alt: Latest version
    84  
    85  .. |packages| image:: https://repology.org/badge/tiny-repos/python:pyftpdlib.svg
    86      :target: https://repology.org/metapackage/python:pyftpdlib/versions
    87      :alt: Binary packages
    88  
    89  .. |license| image:: https://img.shields.io/pypi/l/pyftpdlib.svg
    90      :target: https://github.com/giampaolo/pyftpdlib/blob/master/LICENSE
    91      :alt: License
    92  
    93  .. |twitter| image:: https://img.shields.io/twitter/follow/grodola.svg?label=follow&style=flat&logo=twitter&logoColor=4FADFF
    94      :target: https://twitter.com/grodola
    95      :alt: Twitter Follow
    96  
    97  Quick links
    98  ===========
    99  
   100  - `Home <https://github.com/giampaolo/pyftpdlib>`__
   101  - `Documentation <http://pyftpdlib.readthedocs.io>`__
   102  - `Download <https://pypi.python.org/pypi/pyftpdlib/>`__
   103  - `Blog <http://grodola.blogspot.com/search/label/pyftpdlib>`__
   104  - `Mailing list <http://groups.google.com/group/pyftpdlib/topics>`__
   105  - `What's new <https://github.com/giampaolo/pyftpdlib/blob/master/HISTORY.rst>`__
   106  
   107  About
   108  =====
   109  
   110  Python FTP server library provides a high-level portable interface to easily
   111  write very efficient, scalable and asynchronous FTP servers with Python. It is
   112  the most complete `RFC-959 <http://www.faqs.org/rfcs/rfc959.html>`__ FTP server
   113  implementation available for `Python <http://www.python.org/>`__ programming
   114  language.
   115  
   116  Features
   117  ========
   118  
   119  - Extremely **lightweight**, **fast** and **scalable** (see
   120    `why <https://github.com/giampaolo/pyftpdlib/issues/203>`__ and
   121    `benchmarks <http://pyftpdlib.readthedocs.io/en/latest/benchmarks.html>`__).
   122  - Uses **sendfile(2)** (see `pysendfile <https://github.com/giampaolo/pysendfile>`__)
   123    system call for uploads.
   124  - Uses epoll() / kqueue() / select() to handle concurrency asynchronously.
   125  - ...But can optionally skip to a
   126    `multiple thread / process <http://pyftpdlib.readthedocs.io/en/latest/tutorial.html#changing-the-concurrency-model>`__
   127    model (as in: you'll be free to block or use slow filesystems).
   128  - Portable: entirely written in pure Python; works with Python from **2.6** to
   129    **3.5** by using a single code base.
   130  - Supports **FTPS** (`RFC-4217 <http://tools.ietf.org/html/rfc4217>`__),
   131    **IPv6** (`RFC-2428 <ftp://ftp.rfc-editor.org/in-notes/rfc2428.txt>`__),
   132    **Unicode** file names (`RFC-2640 <http://tools.ietf.org/html/rfc2640>`__),
   133    **MLSD/MLST** commands (`RFC-3659 <ftp://ftp.rfc-editor.org/in-notes/rfc3659.txt>`__).
   134  - Support for virtual users and virtual filesystem.
   135  - Extremely flexible system of "authorizers" able to manage both "virtual" and
   136    "real" users on on both
   137    `UNIX <http://pyftpdlib.readthedocs.io/en/latest/tutorial.html#unix-ftp-server>`__
   138    and
   139    `Windows <http://pyftpdlib.readthedocs.io/en/latest/tutorial.html#windows-ftp-server>`__.
   140  - `Test coverage <https://github.com/giampaolo/pyftpdlib/blob/master/pyftpdlib/test/>`__
   141    close to 100%.
   142  
   143  Performances
   144  ============
   145  
   146  Despite being written in an interpreted language, pyftpdlib has transfer rates
   147  comparable or superior to common UNIX FTP servers written in C. It usually tends
   148  to scale better (see `benchmarks <https://pyftpdlib.readthedocs.io/en/latest/benchmarks.html>`__)
   149  because whereas vsftpd and proftpd use multiple processes to
   150  achieve concurrency, pyftpdlib only uses one (see `the C10K problem <http://www.kegel.com/c10k.html>`__).
   151  
   152  pyftpdlib vs. proftpd 1.3.4
   153  ---------------------------
   154  
   155  +-----------------------------------------+----------------+----------------+-------------+
   156  | **benchmark type**                      | **pyftpdlib**  | **proftpd**    | **speedup** |
   157  +-----------------------------------------+----------------+----------------+-------------+
   158  | STOR (client -> server)                 |  585.90 MB/sec | 600.49 MB/sec  | -0.02x      |
   159  +-----------------------------------------+----------------+----------------+-------------+
   160  | RETR (server -> client)                 | 1652.72 MB/sec | 1524.05 MB/sec | **+0.08**   |
   161  +-----------------------------------------+----------------+----------------+-------------+
   162  | 300 concurrent clients (connect, login) |    0.19 secs   | 9.98 secs      | **+51x**    |
   163  +-----------------------------------------+----------------+----------------+-------------+
   164  | STOR (1 file with 300 idle clients)     |  585.59 MB/sec | 518.55 MB/sec  | **+0.1x**   |
   165  +-----------------------------------------+----------------+----------------+-------------+
   166  | RETR (1 file with 300 idle clients)     | 1497.58 MB/sec | 1478.19 MB/sec | 0x          |
   167  +-----------------------------------------+----------------+----------------+-------------+
   168  | 300 concurrent clients (RETR 10M file)  |    3.41 secs   | 3.60 secs      | **+0.05x**  |
   169  +-----------------------------------------+----------------+----------------+-------------+
   170  | 300 concurrent clients (STOR 10M file)  |    8.60 secs   | 11.56 secs     | **+0.3x**   |
   171  +-----------------------------------------+----------------+----------------+-------------+
   172  | 300 concurrent clients (QUIT)           |    0.03 secs   | 0.39 secs      | **+12x**    |
   173  +-----------------------------------------+----------------+----------------+-------------+
   174  
   175  pyftpdlib vs. vsftpd 2.3.5
   176  --------------------------
   177  
   178  +-----------------------------------------+----------------+----------------+-------------+
   179  | **benchmark type**                      | **pyftpdlib**  | **vsftpd**     | **speedup** |
   180  +-----------------------------------------+----------------+----------------+-------------+
   181  | STOR (client -> server)                 |  585.90 MB/sec | 611.73 MB/sec  | -0.04x      |
   182  +-----------------------------------------+----------------+----------------+-------------+
   183  | RETR (server -> client)                 | 1652.72 MB/sec | 1512.92 MB/sec | **+0.09**   |
   184  +-----------------------------------------+----------------+----------------+-------------+
   185  | 300 concurrent clients (connect, login) |    0.19 secs   | 20.39 secs     | **+106x**   |
   186  +-----------------------------------------+----------------+----------------+-------------+
   187  | STOR (1 file with 300 idle clients)     |  585.59 MB/sec | 610.23 MB/sec  | -0.04x      |
   188  +-----------------------------------------+----------------+----------------+-------------+
   189  | RETR (1 file with 300 idle clients)     | 1497.58 MB/sec | 1493.01 MB/sec | 0x          |
   190  +-----------------------------------------+----------------+----------------+-------------+
   191  | 300 concurrent clients (RETR 10M file)  |    3.41 secs   | 3.67 secs      | **+0.07x**  |
   192  +-----------------------------------------+----------------+----------------+-------------+
   193  | 300 concurrent clients (STOR 10M file)  |    8.60 secs   | 9.82 secs      | **+0.07x**  |
   194  +-----------------------------------------+----------------+----------------+-------------+
   195  | 300 concurrent clients (QUIT)           |    0.03 secs   | 0.01 secs      | +0.14x      |
   196  +-----------------------------------------+----------------+----------------+-------------+
   197  
   198  For more benchmarks see `here <http://pyftpdlib.readthedocs.io/en/latest/benchmarks.html>`__.
   199  
   200  Quick start
   201  ===========
   202  
   203  .. code-block:: python
   204  
   205      >>> from pyftpdlib.authorizers import DummyAuthorizer
   206      >>> from pyftpdlib.handlers import FTPHandler
   207      >>> from pyftpdlib.servers import FTPServer
   208      >>>
   209      >>> authorizer = DummyAuthorizer()
   210      >>> authorizer.add_user("user", "12345", "/home/giampaolo", perm="elradfmwMT")
   211      >>> authorizer.add_anonymous("/home/nobody")
   212      >>>
   213      >>> handler = FTPHandler
   214      >>> handler.authorizer = authorizer
   215      >>>
   216      >>> server = FTPServer(("127.0.0.1", 21), handler)
   217      >>> server.serve_forever()
   218      [I 13-02-19 10:55:42] >>> starting FTP server on 127.0.0.1:21 <<<
   219      [I 13-02-19 10:55:42] poller: <class 'pyftpdlib.ioloop.Epoll'>
   220      [I 13-02-19 10:55:42] masquerade (NAT) address: None
   221      [I 13-02-19 10:55:42] passive ports: None
   222      [I 13-02-19 10:55:42] use sendfile(2): True
   223      [I 13-02-19 10:55:45] 127.0.0.1:34178-[] FTP session opened (connect)
   224      [I 13-02-19 10:55:48] 127.0.0.1:34178-[user] USER 'user' logged in.
   225      [I 13-02-19 10:56:27] 127.0.0.1:34179-[user] RETR /home/giampaolo/.vimrc completed=1 bytes=1700 seconds=0.001
   226      [I 13-02-19 10:56:39] 127.0.0.1:34179-[user] FTP session closed (disconnect).
   227  
   228  `other code samples <http://pyftpdlib.readthedocs.io/en/latest/tutorial.html>`__
   229  
   230  Donate
   231  ======
   232  
   233  A lot of time and effort went into making pyftpdlib as it is right now.
   234  If you feel pyftpdlib is useful to you or your business and want to support its
   235  future development please consider `donating <https://gmpy.dev/donate>`__ me some money."""
   236  
   237  [files."/usr/lib/python3.11/site-packages/python_ftp_server-1.3.17.dist-info"]
   238  content = """INSTALLER
   239  METADATA
   240  RECORD
   241  REQUESTED
   242  top_level.txt
   243  WHEEL"""
   244  stat.isdir = true
   245  
   246  [files."/usr/lib/python3.11/site-packages/python_ftp_server-1.3.17.dist-info/INSTALLER"]
   247  content = """pip"""
   248  
   249  [files."/usr/lib/python3.11/site-packages/python_ftp_server-1.3.17.dist-info/METADATA"]
   250  content = """Metadata-Version: 2.1
   251  Name: python-ftp-server
   252  Version: 1.3.17
   253  Summary: Command line FTP server tool designed for performance and ease of use.
   254  Home-page: https://github.com/Red-Eyed/python_ftp_server
   255  Author: Vadym Stupakov
   256  Author-email: vadym.stupakov@gmail.com
   257  Maintainer-email: vadym.stupakov@gmail.com
   258  License: MIT
   259  Keywords: ftp,cli,cmd,server
   260  Platform: UNKNOWN
   261  Classifier: Topic :: Communications :: File Sharing
   262  Classifier: Topic :: Internet :: File Transfer Protocol (FTP)
   263  Requires-Python: >=3.6
   264  Description-Content-Type: text/markdown
   265  Requires-Dist: requests (>=2.26)
   266  Requires-Dist: pyftpdlib (>=1.5.6)
   267  Requires-Dist: pyopenssl (>=21.0.0)
   268  Requires-Dist: pysendfile (>=2.0.1) ; sys_platform != "win32"
   269  
   270  # FTP server to transfer files between machines with zero configuration
   271  ## Usage
   272  1. `python3 -m pip install python-ftp-server`
   273  2. `python3 -m python_ftp_server -d "dirctory/to/share"`
   274  will print:
   275  ```bash
   276  Local address: ftp://<IP>:60000
   277  User: <USER>
   278  Password: <PASSWORD>
   279  ```
   280  3. Copy and paste your `IP`, `USER`, `PASSWORD`, `PORT` into [FileZilla](https://filezilla-project.org/) (or any other FTP client):
   281  ![](https://github.com/Red-Eyed/python_ftp_server/raw/master/img.png)
   282  
   283  """
   284  
   285  [files."/usr/lib/python3.11/site-packages/python_ftp_server-1.3.17.dist-info/RECORD"]
   286  content = """python_ftp_server-1.3.17.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
   287  python_ftp_server-1.3.17.dist-info/METADATA,sha256=sqkMq4qxE_hOUvrKs-kjNb2RTklFS_U2mjC21RNrNJE,1186
   288  python_ftp_server-1.3.17.dist-info/RECORD,,
   289  python_ftp_server-1.3.17.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
   290  python_ftp_server-1.3.17.dist-info/WHEEL,sha256=ewwEueio1C2XeHTvT17n8dZUJgOvyCWCt0WVNLClP9o,92
   291  python_ftp_server-1.3.17.dist-info/top_level.txt,sha256=5IouKF_sn6V_QyCaa14dz9vwj5JA7CM9Wc8-w-G5Xds,18
   292  python_ftp_server/__init__.py,sha256=rcywT693wT7YfEP6VaY5Y1GlPoDZUeDgFsw-4yPk8EE,117
   293  python_ftp_server/__main__.py,sha256=1dv94LQ2yLxHgLmN5_0Ype4QIo9A3Wofwx63j0kXE5g,203
   294  python_ftp_server/__pycache__/__init__.cpython-311.pyc,,
   295  python_ftp_server/__pycache__/__main__.cpython-311.pyc,,
   296  python_ftp_server/__pycache__/ftp_server.cpython-311.pyc,,
   297  python_ftp_server/ftp_server.py,sha256=O8f6rpKi4B9owazGtQisAJaiX5h3YOepNcfwNHw-W-I,4602"""
   298  
   299  [files."/usr/lib/python3.11/site-packages/python_ftp_server-1.3.17.dist-info/REQUESTED"]
   300  content = """"""
   301  
   302  [files."/usr/lib/python3.11/site-packages/python_ftp_server-1.3.17.dist-info/top_level.txt"]
   303  content = """python_ftp_server"""
   304  
   305  [files."/usr/lib/python3.11/site-packages/python_ftp_erver-1.3.17.dist-info/WHEEL"]
   306  content = """Wheel-Version: 1.0
   307  Generator: bdist_wheel (0.37.0)
   308  Root-Is-Purelib: true
   309  Tag: py3-none-any
   310  """