[Npgsql-devel] Last time for breaking changes

Josh Cooley jbnpgsql at tuxinthebox.net
Wed Sep 10 12:43:12 UTC 2008


On Tue, Sep 9, 2008 at 2:25 PM, Federico Di Gregorio <fog at initd.org> wrote:
> Il giorno mar, 09/09/2008 alle 15.35 -0300, Francisco Figueiredo Jr. ha
> scritto:
>> On Tue, Sep 9, 2008 at 11:53 AM, David Bachmann
>> > 1. Dependency over Mono.Security
>> >
>> > If I'm right, Mono.Security is used for handling SSL connections.
>> > Isn't it possible to use features of the 'System' namespace, and remove
>> > the dependency over Mono.Security?
>> >
>> > Doing so involve changing the following publicly accessible field from
>> > Npgsql.NpgsqlConnection (Because they use types from
>> > Mono.Security.Protocol.Tls):
>> >
>> > event CertificateSelectionCallback CertificateSelectionCallback;
>> > event CertificateValidationCallback CertificateValidationCallback;
>> > event PrivateKeySelectionCallback PrivateKeySelectionCallback;
>> >
>> >
>>
>> Those events are there in order to enable user to make ssl certificate
>> based checking. Is there something like that on core .net libraries or
>> is this done automagically on other places? If the last option it
>> would be much better to remove from Npgsql the authentication using
>> server and client certificates. Or maybe I'm totally wrong about that.
>
> The callbacks are in Mono.* but use only types defined in
> System.Security.Cryptography so getting rid of the Mono.* dependency
> should be pretty easy. Just redefine exactly the same callbacks
> (delegates) to exist in Npgsql namespace and use that ones for the
> events.
>

I think creating new delegate types in the Npgsql namespace is very
easy.  It wouldn't be so easy to keep the same signature and remove
the dependency on Mono.Security.  This close to the release, may be we
should just remove the need for another namespace without removing the
assembly dependency.  Unless someone has a simple way of converting
the arguments in the framework SslStream callbacks to the delegate
types in Mono.Security.

Josh



More information about the Npgsql-devel mailing list