[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gpsd-dev
Subject:    =?UTF-8?Q?Re=3A_=E2=9C=983=2E23~rc2_Please_test?=
From:       Fred Wright <fw () fwright ! net>
Date:       2021-08-06 18:34:23
Message-ID: alpine.OSX.2.23.453.2108061122200.722 () macpro ! local
[Download RAW message or body]


On Fri, 6 Aug 2021, Gary E. Miller wrote:

> gpxlogger never worked for all cases, so I'll not hold up the release
> for a bad corner case.

As I posted last night, it's now failing in some cases that used to work. 
Not fixing old bugs in the current release is justifiable, but introducing 
new ones is bad.

Unfortunately, I don't see a fix that's both easy and clean.  But if the 
goal is simply to comply with the "letter of the law" for CWE-479, then 
that could be handled by using sig_flag to ensure that the nonreentrant 
action can't happen more than once.  Whatever tool you're using might not 
be smart enough to figure out that reentrancy doesn't matter in that case 
and still complain, but it would be a false positive.  Clearly the signal 
handler has to do *something* to break out of gps_mainloop() in the main 
program, or one gets the current hang behavior.  This would be a more 
widespread problem if programs besides gpxlogger used gps_mainloop().

If you think this is fun, try making signal interactions with the main 
program work reliably in Python. :-)

Fred Wright

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic