Re: [PATCH] OpenSSL: Mark underlying BIO with the appropriate type flags

From: Daniel Gustafsson <daniel(at)yesql(dot)se>
To: Itamar Gafni <itamar(dot)gafni(at)imperva(dot)com>
Cc: "pgsql-hackers(at)lists(dot)postgresql(dot)org" <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: [PATCH] OpenSSL: Mark underlying BIO with the appropriate type flags
Date: 2021-08-09 15:35:59
Message-ID: A42F07AB-EA0F-4D9A-9EE8-8C3DBD9EAA24@yesql.se
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

> On 6 Aug 2021, at 12:16, Itamar Gafni <itamar(dot)gafni(at)imperva(dot)com> wrote:

> Previous to OpenSSL version 1.1.0, the BIO methods object would be copied directly from the existing socket type and then its read\write functions would be replaced.
> With 1.1.0 and up, the object is created from scratch and then all its methods are initialized to be the ones of the socket type, except read/write which are custom.
> In this newer way, a new type is given to it by calling “BIO_get_new_index”, but the related type flags aren’t added.

According to the documentation (I haven't tested it yet but will) I think you
are right that the type should be set with the appropriate BIO_TYPE_ flags.

For OpenSSL 1.0.1 and 1.0.2, wouldn't we need to set the .type with a randomly
chosen index anded with BIO_TYPE_DESCRIPTOR and BIO_TYPE_SOURCE_SINK as well?

--
Daniel Gustafsson https://vmware.com/

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Robert Haas 2021-08-09 15:46:30 Re: pgsql: pgstat: Bring up pgstat in BaseInit() to fix uninitialized use o
Previous Message Nitin Jadhav 2021-08-09 15:20:59 Re: when the startup process doesn't (logging startup delays)