Hello,

Here is a patch to fix the problem.  The fix required is for a single
type conversion issue.  I have also written a test program to check that
the patch does not introduce any functionality problem by fixing a
nicely working bug.  Both the patch and test program are attached.  I
have tried to submit the patch to upstream but the site and repository
seem to be down.

Please try to upload a release with the patch so that repro goes back
into testing.  FreedomBox dearly misses it :)

Thank you,

-- 
Sunil
Description: Fix FTBFS with GCC 6
 Fix a minor, possibly unintentional, type casting error to fix a
 compilation error with GCC 6.  The data being initialized is unsigned
 char where as the array is char.  The array is being later type
 casted to (unsigned char *).  So, it is appropriate for the array to
 be unsigned char[].
 .
 Currently the upstream repository and site are unreachable.
Author: Sunil Mohan Adapa <su...@medhas.org>
Bug-Debian: https://bugs.debian.org/811725
Forwarded: <no|not-needed|url proving that it has been forwarded>
Last-Update: 2016-08-30

--- sipxtapi-3.3.0~test17.orig/sipXportLib/src/os/OsEncryption.cpp
+++ sipxtapi-3.3.0~test17/sipXportLib/src/os/OsEncryption.cpp
@@ -55,7 +55,7 @@
 // EXTERNAL VARIABLES
 
 // CONSTANTS
-static const char gSalt[] =
+static const unsigned char gSalt[] =
 {
     (unsigned char)0xc9, (unsigned char)0x36, (unsigned char)0x78, (unsigned char)0x99,
     (unsigned char)0x52, (unsigned char)0x3e, (unsigned char)0xea, (unsigned char)0xf2
#include <iostream>

static const char gSalt1[] =
{
    (unsigned char)0xc9, (unsigned char)0x36, (unsigned char)0x78, (unsigned char)0x99,
    (unsigned char)0x52, (unsigned char)0x3e, (unsigned char)0xea, (unsigned char)0xf2
};

static const unsigned char gSalt2[] =
{
    (unsigned char)0xc9, (unsigned char)0x36, (unsigned char)0x78, (unsigned char)0x99,
    (unsigned char)0x52, (unsigned char)0x3e, (unsigned char)0xea, (unsigned char)0xf2
};

int main() {
    unsigned char * mSalt1 = (unsigned char *)gSalt1;
    unsigned char * mSalt2 = (unsigned char *)gSalt1;
    for (int i = 0; i < 8; i++) {
        if (mSalt1[i] != mSalt2[i]) {
            std::cout << 'Error';
            return 1;
        }
    }
    return 0;
}

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to