Re: Re: [COMMITTERS] pgsql: Force strings passed to and from plperl to be in UTF8 encoding.

From: Alex Hunsaker <badalex(at)gmail(dot)com>
To: Amit Khandekar <amit(dot)khandekar(at)enterprisedb(dot)com>
Cc: Andrew Dunstan <andrew(at)dunslane(dot)net>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Re: [COMMITTERS] pgsql: Force strings passed to and from plperl to be in UTF8 encoding.
Date: 2011-10-05 06:59:47
Message-ID: CAFaPBrToG+yseU7vdMZ3uMmGgjeoYYEtec1MUWcN1kkuuCJ5Zw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers pgsql-hackers

On Wed, Oct 5, 2011 at 00:30, Alex Hunsaker <badalex(at)gmail(dot)com> wrote:
> On Tue, Oct 4, 2011 at 23:46, Amit Khandekar
> <amit(dot)khandekar(at)enterprisedb(dot)com> wrote:

>> You mean the final changes in plperl_helpers.h would look like
>> something like this right? :
>>
>>  static inline char *
>>  utf_u2e(const char *utf8_str, size_t len)
>>  {
>>        char       *ret = (char *) pg_do_encoding_conversion((unsigned
>> char *) utf8_str, len, PG_UTF8, GetDatabaseEncoding());
>>
>>        if (ret == utf8_str)
>> +       {
>> +               if (GetDatabaseEncoding() == PG_UTF8 ||
>> +                       GetDatabaseEncoding() == PG_SQL_ASCII)
>> +               {
>> +                       pg_verify_mbstr_len(PG_UTF8, utf8_str, len, false);
>> +               }
>> +
>>                ret = pstrdup(ret);
>> +       }
>>        return ret;
>>  }
>

>> Yeah I am ok with that. It's just an additional check besides (ret ==
>> utf8_str) to know if we really require validation.

Find it attached. [ Note I didn't put the check inside the if (ret ==
utf8_str) as it seemed a bit cleaner (indentation wise) to have it
outside ]

Attachment Content-Type Size
plperl_verify_utf_u2e_v3.patch text/x-patch 2.9 KB

In response to

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Amit Khandekar 2011-10-05 07:58:51 Re: Re: [COMMITTERS] pgsql: Force strings passed to and from plperl to be in UTF8 encoding.
Previous Message Alex Hunsaker 2011-10-05 06:30:01 Re: Re: [COMMITTERS] pgsql: Force strings passed to and from plperl to be in UTF8 encoding.

Browse pgsql-hackers by date

  From Date Subject
Next Message Greg Smith 2011-10-05 07:02:12 Re: Displaying accumulated autovacuum cost
Previous Message Greg Smith 2011-10-05 06:52:24 Re: Displaying accumulated autovacuum cost