Welcome! Log In Create A New Profile

Advanced

RE: Исправления срабатываний статического анализатора.

Korobov Vladimir via nginx-ru
October 05, 2022 06:20AM
Да, нужно доработать патч. Согласен.

С уважением,
Владимир Коробов


-----Original Message-----
From: Slawa Olhovchenkov <slw@zxy.spb.ru>
Sent: Wednesday, October 5, 2022 1:10 PM
To: Korobov Vladimir via nginx-ru <nginx-ru@nginx.org>
Subject: Re: Исправления срабатываний статического анализатора.

On Wed, Oct 05, 2022 at 09:24:19AM +0000, Korobov Vladimir via nginx-ru wrote:

> Окей, неправально выразился.
> Я понимаю, что делает этот патч и он не делает хуже.

окей, возьмем скажем второй кусок патча.

diff -r ba5cf8f73a2d -r ee42d7efc9a6
src/http/modules/ngx_http_proxy_module.c
--- a/src/http/modules/ngx_http_proxy_module.c Thu Sep 08 13:53:49
2022 +0400
+++ b/src/http/modules/ngx_http_proxy_module.c Fri Sep 23 03:52:37
2022 -0700
@@ -1485,9 +1485,11 @@

continue;
}
-
- code = *(ngx_http_script_code_pt *) e.ip;
- code((ngx_http_script_engine_t *) &e);
+
+ if (*(uintptr_t *) e.ip) {
+ code = *(ngx_http_script_code_pt *) e.ip;
+ code((ngx_http_script_engine_t *) &e);
+ }

*e.pos++ = ':'; *e.pos++ = ' ';

взяли и просто выкинули исполнение кода (вопрос о том, может ли в e.ip вообще чисто теоретически быть NULL -- пока опустим) раскрытия макросов.

но сдвиг по строке оставили. это точно то, что надо делать и это не сделает хуже?

при этом, если посмотреть внимательно, то ниже, после цикла while у нас написанно

e.ip += sizeof(uintptr_t);

т.е. если предположить, что по какой-то причине у нас структрура
headers->values->elts (по которой и бежит e.ip) побилась, и там вдруг
возник NULL где не надо, то мы его пропустим и дальше будем уже выполнять мусор. ну или еще NULL пропустим, пока мусор не попадется.
после этого его выполним.

точно-точно не хуже?

> С уважением,
> Владимир Коробов
>
>
> -----Original Message-----
> From: Slawa Olhovchenkov <slw@zxy.spb.ru>
> Sent: Wednesday, October 5, 2022 12:13 PM
> To: Korobov Vladimir via nginx-ru <nginx-ru@nginx.org>
> Subject: Re: Исправления срабатываний статического анализатора.
>
> On Wed, Oct 05, 2022 at 05:22:10AM +0000, Korobov Vladimir via nginx-ru wrote:
>
> > Кажется, что да, что-то делают. Цели успокоить анализатора нет, тем более анализатор генерирует несколько сотен предупреждений, а исправляются патчем только несколько.
>
> погоди-погоди, как так "кажется"?
> ны написал какой-то код, но сам не понимаешь что он делает?
> а не делает ли он хуже?
>
> > С уважением,
> > Владимир Коробов
> >
> >
> > -----Original Message-----
> > From: Slawa Olhovchenkov <slw@zxy.spb.ru>
> > Sent: Tuesday, October 4, 2022 4:05 PM
> > To: Korobov Vladimir via nginx-ru <nginx-ru@nginx.org>
> > Subject: Re: Исправления срабатываний статического анализатора.
> >
> > On Tue, Oct 04, 2022 at 12:00:57PM +0000, Korobov Vladimir via nginx-ru wrote:
> >
> > > Добрый день
> > >
> > > После проверки исходного кода статическим анализатором (Svace https://www.ispras.ru/technologies/svace/) выделено несколько потенциально опасных мест, закрывающихся приложенным патчем.
> > >
> > > Прошу рассмотреть возможность включения указанных изменений в исходный код проекта.
> >
> > а эти исправления на самом деле что делают?
> > Успокаивают статистический анализатор или исправляют ошибки?
> > _______________________________________________
> > nginx-ru mailing list -- nginx-ru@nginx.org To unsubscribe send an
> > email to nginx-ru-leave@nginx.org
> > _______________________________________________
> > nginx-ru mailing list -- nginx-ru@nginx.org To unsubscribe send an
> > email to nginx-ru-leave@nginx.org
> _______________________________________________
> nginx-ru mailing list -- nginx-ru@nginx.org To unsubscribe send an
> email to nginx-ru-leave@nginx.org
> _______________________________________________
> nginx-ru mailing list -- nginx-ru@nginx.org To unsubscribe send an
> email to nginx-ru-leave@nginx.org
_______________________________________________
nginx-ru mailing list -- nginx-ru@nginx.org To unsubscribe send an email to nginx-ru-leave@nginx.org
_______________________________________________
nginx-ru mailing list -- nginx-ru@nginx.org
To unsubscribe send an email to nginx-ru-leave@nginx.org
Subject Author Posted

Исправления срабатываний статического анализатора. Attachments

Korobov Vladimir via nginx-ru October 04, 2022 08:02AM

Re: Исправления срабатываний статического анализатора.

Slawa Olhovchenkov October 04, 2022 09:06AM

RE: Исправления срабатываний статического анализатора.

Korobov Vladimir via nginx-ru October 05, 2022 01:24AM

Re: Исправления срабатываний статического анализатора.

Slawa Olhovchenkov October 05, 2022 05:14AM

RE: Исправления срабатываний статического анализатора.

Korobov Vladimir via nginx-ru October 05, 2022 05:26AM

Re: Исправления срабатываний статического анализатора.

Evgeniy Berdnikov October 05, 2022 05:34AM

RE: Исправления срабатываний статического анализатора.

Korobov Vladimir via nginx-ru October 05, 2022 06:20AM

Re: Исправления срабатываний статического анализатора.

Slawa Olhovchenkov October 05, 2022 06:12AM

RE: Исправления срабатываний статического анализатора.

Korobov Vladimir via nginx-ru October 05, 2022 06:20AM

Re: Исправления срабатываний статического анализатора.

Evgeniy Berdnikov October 04, 2022 09:14AM

Re: Исправления срабатываний статического анализатора.

Eugene Grosbein October 04, 2022 12:34PM

Re: Исправления срабатываний статического анализатора.

Evgeniy Berdnikov October 04, 2022 01:54PM

Re: Исправления срабатываний статического анализатора.

Eugene Grosbein October 04, 2022 03:36PM

Re: Исправления срабатываний статического анализатора.

Evgeniy Berdnikov October 04, 2022 03:56PM

Re: Исправления срабатываний статического анализатора.

Eugene Grosbein October 04, 2022 04:12PM

Re: Исправления срабатываний статического анализатора.

Maxim Dounin October 04, 2022 02:14PM

RE: Исправления срабатываний статического анализатора.

Korobov Vladimir via nginx-ru October 05, 2022 01:36AM

Re: Исправления срабатываний статического анализатора.

Илья Шипицин October 05, 2022 04:30AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 109
Record Number of Users: 6 on February 13, 2018
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready