| Bug #18815 | libmysql using yassl can't be linked with c program | ||
|---|---|---|---|
| Submitted: | 5 Apr 2006 15:38 | Modified: | 27 Apr 2006 20:16 |
| Reporter: | Magnus Blåudd | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | MySQL Server: Compiling | Severity: | S2 (Serious) |
| Version: | 5.0.21 | OS: | Solaris (Solaris) |
| Assigned to: | Magnus Blåudd | CPU Architecture: | Any |
[5 Apr 2006 15:38]
Magnus Blåudd
[6 Apr 2006 12:37]
Magnus Blåudd
The pure_error symbol is inserted for classes with pure virtal functions. Ifthe pure part is removed from all classes in a file, the problem will go away(or move to another file...)
[6 Apr 2006 13:10]
Magnus Blåudd
The register_exit_code symbol comes from declarations of singletons that are declared as a static const variable of a class.
Example:
yassl_int.hpp
class sslFactory {
< snip>
private:
static sslFactory instance_;
}
Later in yassl_int.cpp
Sessions Sessions::instance_; // simple singleton
[6 Apr 2006 13:36]
Magnus Blåudd
The vector_des and vector_con calls are generated in the function AbstractEuclideanDomain::Gcd when arrays of objects are created on the stack.
const Integer& AbstractEuclideanDomain::Gcd(const Element &a,
const Element &b) const
{
Element g[3]={b, a};
unsigned int i0=0, i1=1, i2=2;
while (!Equal(g[i1], this->Identity()))
{
g[i2] = Mod(g[i0], g[i1]);
unsigned int t = i0; i0 = i1; i1 = i2; i2 = t;
}
return result = g[i0];
}
[12 Apr 2006 9:54]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/4846
[12 Apr 2006 9:54]
Magnus Blåudd
Patch has been sent for inclusion in upstream yaSSL.
[18 Apr 2006 10:08]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/5072
