From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 5795 invoked by alias); 1 Oct 2013 21:57:30 -0000 Mailing-List: contact glibc-bugs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: glibc-bugs-owner@sourceware.org Received: (qmail 5750 invoked by uid 48); 1 Oct 2013 21:57:27 -0000 From: "a.i.prutkov at gmail dot com" To: glibc-bugs@sourceware.org Subject: [Bug malloc/15991] New: Error after calling proc by pointer: `malloc.c:3096: sYSMALLOc'... Date: Tue, 01 Oct 2013 21:57:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: glibc X-Bugzilla-Component: malloc X-Bugzilla-Version: 2.18 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: a.i.prutkov at gmail dot com X-Bugzilla-Status: NEW X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: unassigned at sourceware dot org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version bug_status bug_severity priority component assigned_to reporter Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://sourceware.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2013-10/txt/msg00006.txt.bz2 https://sourceware.org/bugzilla/show_bug.cgi?id=15991 Bug ID: 15991 Summary: Error after calling proc by pointer: `malloc.c:3096: sYSMALLOc'... Product: glibc Version: 2.18 Status: NEW Severity: normal Priority: P2 Component: malloc Assignee: unassigned at sourceware dot org Reporter: a.i.prutkov at gmail dot com Dears sirs. I have a problem when I am trying to run my programm written on C++ (platform is Core i5-2.41 GNU/Linux x86_64). The programm has many pointers on procedures (about 220), extracted by dlsym from dynamical libraries (such as lissl, as libcrypto, as limcrypt). I need it to protect the programm from Reverse Engineering (LD_PRELOAD etc). The programm is multithread (Posix Threads), and it has callbacks with local defined objects of different classes (NOT DYNAMICALLY for correct free memory (by their destructors) used by objects in threads) similar: [CODE=CPP] void* my1_cb(void *arg){ Crypt::Rsa rsa; // Rsa is big class for job with openssl rsa keys/CA Internet::SSLTcpClent client; // SSLTcpClent is big class for connect to SSL hosts // etc ... } [/CODE] In the runtime I get error: [STDOUTPUT] server: malloc.c:3096: sYSMALLOc: Assertion `(old_top == (((mbinptr) (((char *) &((av)->bins[((1) - 1) * 2])) - __builtin_offsetof (struct malloc_chunk, fd)))) && old_size == 0) || ((unsigned long) (old_size) >= (unsigned long)((((__builtin_offsetof (struct malloc_chunk, fd_nextsize))+((2 * (sizeof(size_t))) - 1)) & ~((2 * (sizeof(size_t))) - 1))) && ((old_top)->size & 0x1) && ((unsigned long)old_end & pagemask) == 0)' failed. Abort termination [/STDOUTPUT] after calling procedure by pointer (from libz.so): [CODE=CPP] if (procs->deflateInit2_p(&stream, Z_BEST_COMPRESSION, Z_DEFLATED, m, 8, Z_DEFAULT_STRATEGY, procs->zlibVersion_p(), sizeof(z_stream)) != Z_OK) { goto err; } [/CODE] I will be glad any help/tips. -- Have a nice day. -- You are receiving this mail because: You are on the CC list for the bug.