• Tom Lane's avatar
    Put back pqsignal() as an exported libpq symbol. · 06a367c3
    Tom Lane authored
    This reverts commit f7ab8028.  Per discussion, we can't remove an
    exported symbol without a SONAME bump, which we don't want to do.
    In particular that breaks usage of current libpq.so with pre-9.3
    versions of psql etc, which need libpq to export pqsignal().
    
    As noted in that commit message, exporting the symbol from libpgport.a
    won't work reliably; but actually we don't want to export src/port's
    implementation anyway.  Any pre-9.3 client is going to be expecting the
    definition that pqsignal() had before 9.3, which was that it didn't
    set SA_RESTART for SIGALRM.  Hence, put back pqsignal() in a separate
    source file in src/interfaces/libpq, and give it the old semantics.
    
    Back-patch to v12.
    
    Discussion: https://postgr.es/m/E1g5vmT-0003K1-6S@gemulon.postgresql.org
    06a367c3
legacy-pqsignal.c 1.57 KB