Some OpenPGP verification callsites crash because they have no timeout

Bug #1820552 reported by William Grant on 2019-03-17
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Launchpad itself
Critical
Colin Watson

Bug Description

I tried 3 times to open a bug always receive a messages saying an error occurred processing my email:

error ID OOPS-d51b412e09e6c644761848bc29812cb2
error ID OOPS-68981770c2bf09243ce2f2fd286b161e
error ID OOPS-b3c2882e126b0cf5c60dde5cc9fecd0b

The last attempt to file the bug had the following body:

I have just bought a new laptop from Teclast model F6 Pro. I have installed Ubuntu LTS 18.04.2 (kernel 4.18.0-16-generic).

The Goodix touchpad of the laptop is not recognized by the kernel version used by Ubuntu LTS 18.04.2.

That is my kernel error:

[ 3.733842] i2c_hid i2c-SYNA3602:00: i2c-SYNA3602:00 supply vdd not found, using dummy regulator
[ 3.738296] i2c_hid i2c-SYNA3602:00: unexpected HID descriptor bcdVersion (0x0000)

The problem is known, it is described here: https://bugzilla.redhat.com/show_bug.cgi?id=1526312

A patch is available here: https://github.com/brotfessor/sipodev/blob/master/b/i2c-hid.c

It looks like that patch entered in the mainline kernel since 4.20 (or 4.19 I am not sure).

It would be very helpful if that patch is added to Ubuntu 18.04.2 LTS 4.18.0-16-generic kernel to help the users of Teclast laptops like me.

On several Teclast laptops the touchpad is not supported on Unbuntu 18.04.2 (for sure F6 pro and F7).

Related branches

William Grant (wgrant) wrote :

Presumably needs a fix similar to r18904, or preferably something more global.

Changed in launchpad:
importance: Undecided → Critical
status: New → Triaged
tags: added: regression
Colin Watson (cjwatson) on 2019-03-18
Changed in launchpad:
assignee: nobody → Colin Watson (cjwatson)
status: Triaged → In Progress
Launchpad QA Bot (lpqabot) wrote :
tags: added: qa-needstesting
Changed in launchpad:
status: In Progress → Fix Committed
Colin Watson (cjwatson) wrote :
Download full text (5.4 KiB)

Before fix:

2019-03-18 17:52:45 DEBUG Cronscript control file not found at file:cronscripts.ini
2019-03-18 17:52:45 INFO Creating lockfile: /var/lock/launchpad-process-mail.lock
2019-03-18 17:52:51 INFO Opening the mail box.
2019-03-18 17:52:51 INFO Processing mail /var/tmp/launchpad_script_mailbox/test-signed
2019-03-18 17:52:51 DEBUG Uploaded mail to librarian http://dogfood.launchpadlibrarian.net/412901065/a612f1ac-49a6-11e9-ad0b-e83935260ce2.txt
2019-03-18 17:52:51 DEBUG processing mail from 'Colin Watson <email address hidden>' message-id '<email address hidden>'
2019-03-18 17:52:51 DEBUG no rules relevant to 'mail.dkim_authentication.disabled'
2019-03-18 17:52:51 INFO Attempting DKIM authentication of message id='<email address hidden>' from='Colin Watson <email address hidden>' sender=None
2019-03-18 17:52:51 INFO DKIM verification result: trusted=False
2019-03-18 17:52:51 DEBUG DKIM debug log:
2019-03-18 17:52:51 DEBUG attempt gpg authentication for <Person at 0x7f5d225fdf10 cjwatson (Colin Watson)>
2019-03-18 17:52:51 ERROR An exception was raised inside the handler:
http://dogfood.launchpadlibrarian.net/412901065/a612f1ac-49a6-11e9-ad0b-e83935260ce2.txt
Traceback (most recent call last):
  File "/srv/launchpad.net/codelines/current/lib/lp/services/mail/incoming.py", line 439, in handleMail
    signature_timestamp_checker)
  File "/srv/launchpad.net/codelines/current/lib/lp/services/mail/incoming.py", line 524, in handle_one_mail
    principal = authenticateEmail(mail, signature_timestamp_checker)
  File "/srv/launchpad.net/codelines/current/lib/lp/services/mail/incoming.py", line 278, in authenticateEmail
    mail, principal, person, signature_timestamp_checker)
  File "/srv/launchpad.net/codelines/current/lib/lp/services/mail/incoming.py", line 315, in _gpgAuthenticateEmail
    canonicalise_line_endings(mail.signedContent), signature)
  File "/srv/launchpad.net/codelines/current/lib/lp/services/gpg/handler.py", line 250, in getVerifiedSignature
    key = self.retrieveKey(sig.fpr)
  File "/srv/launchpad.net/codelines/current/lib/lp/services/gpg/handler.py", line 458, in retrieveKey
    pubkey = self._getPubKey(fingerprint)
  File "/srv/launchpad.net/codelines/current/lib/lp/services/gpg/handler.py", line 547, in _getPubKey
    return self._grabPage('get', fingerprint)
  File "/srv/launchpad.net/codelines/current/lib/lp/services/gpg/handler.py", line 577, in _grabPage
    return urlfetch(url).content
  File "/srv/launchpad.net/codelines/current/lib/lp/services/timeout.py", line 399, in urlfetch
    return URLFetcher().fetch(url, **request_kwargs)
  File "/srv/launchpad.net/codelines/current/lib/lp/services/timeout.py", line 217, in call_with_timeout
    timeout = self.timeout
  File "/srv/launchpad.net/codelines/current/lib/lp/services/timeout.py", line 167, in __get__
    "no timeout set and there is no default timeout function.")
AssertionError: no timeout set and there is no default timeout function.
2019-03-18 17:52:51 INFO OOPS-edb8dc4cbfd1af8b52ac43b3ef9c1be6
2019-03-18 17:52:51 INFO error processing mail: Unhandled exception
2...

Read more...

tags: added: qa-ok
removed: qa-needstesting
Colin Watson (cjwatson) on 2019-03-18
Changed in launchpad:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Related questions