• Bug#1101058: sopv-gpgv: Interrupts not handled gracefully

    From Guillem Jover@21:1/5 to All on Sat Mar 22 17:50:01 2025
    Package: sopv-gpgv
    Version: 0.1.4-1
    Severity: normal

    Hi!

    While playing with sopv-gpgv, I noticed the following unexpected behavior.
    When calling (and then typing Ctrl-C):

    ,---
    $ k=/usr/share/keyrings/debian-archive-keyring.gpg
    $ sopv-gpgv inline-verify --verifications-out foo $k
    ^C
    Traceback (most recent call last):
    File "/usr/bin/sopv-gpgv", line 620, in <module>
    main()
    ~~~~^^
    File "/usr/bin/sopv-gpgv", line 613, in main
    args.func(args)
    ~~~~~~~~~^^^^^^
    File "/usr/bin/sopv-gpgv", line 574, in inline_verify
    res = subprocess.run(
    cmd,
    capture_output=True,
    pass_fds=keep_fds,
    )
    File "/usr/lib/python3.13/subprocess.py", line 556, in run
    stdout, stderr = process.communicate(input, timeout=timeout)
    ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3.13/subprocess.py", line 1219, in communicate
    stdout, stderr = self._communicate(input, endtime, timeout)
    ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3.13/subprocess.py", line 2122, in _communicate
    ready = selector.select(timeout)
    File "/usr/lib/python3.13/selectors.py", line 398, in select
    fd_event_list = self._selector.poll(timeout)
    KeyboardInterrupt

    `---

    We get a traceback instead of a proper error.

    Thanks,
    Guillem

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)