/* Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; version 2 of the License. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ /* Explicit template instantiation requests */ #include "runtime.hpp" #include "handshake.hpp" #include "yassl_int.hpp" #include "crypto_wrapper.hpp" #include "hmac.hpp" #include "md5.hpp" #include "sha.hpp" #include "ripemd.hpp" #include "openssl/ssl.h" #ifdef HAVE_EXPLICIT_TEMPLATE_INSTANTIATION namespace mySTL { template class list; template yaSSL::del_ptr_zero for_each(mySTL::list::iterator, mySTL::list::iterator, yaSSL::del_ptr_zero); template pair* uninit_copy*, mySTL::pair*>(mySTL::pair*, mySTL::pair*, mySTL::pair*); template pair* uninit_copy*, mySTL::pair*>(mySTL::pair*, mySTL::pair*, mySTL::pair*); template void destroy*>(mySTL::pair*, mySTL::pair*); template void destroy*>(mySTL::pair*, mySTL::pair*); template pair* uninit_copy*, mySTL::pair*>(mySTL::pair*, mySTL::pair*, mySTL::pair*); template void destroy*>(mySTL::pair*, mySTL::pair*); template pair* uninit_copy*, mySTL::pair*>(mySTL::pair*, mySTL::pair*, mySTL::pair*); template class list; template class list; template class list; template class list; template class list; template class list; template class list; template void destroy*>(mySTL::pair*, mySTL::pair*); template yaSSL::del_ptr_zero for_each::iterator, yaSSL::del_ptr_zero>(mySTL::list::iterator, mySTL::list::iterator, yaSSL::del_ptr_zero); template yaSSL::del_ptr_zero for_each::iterator, yaSSL::del_ptr_zero>(mySTL::list::iterator, mySTL::list::iterator, yaSSL::del_ptr_zero); template yaSSL::del_ptr_zero for_each::iterator, yaSSL::del_ptr_zero>(mySTL::list::iterator, mySTL::list::iterator, yaSSL::del_ptr_zero); template yaSSL::del_ptr_zero for_each::iterator, yaSSL::del_ptr_zero>(mySTL::list::iterator, mySTL::list::iterator, yaSSL::del_ptr_zero); template yaSSL::del_ptr_zero for_each::iterator, yaSSL::del_ptr_zero>(mySTL::list::iterator, mySTL::list::iterator, yaSSL::del_ptr_zero); template yaSSL::del_ptr_zero for_each::iterator, yaSSL::del_ptr_zero>(mySTL::list::iterator, mySTL::list::iterator, yaSSL::del_ptr_zero); template yaSSL::del_ptr_zero for_each::iterator, yaSSL::del_ptr_zero>(mySTL::list::iterator, mySTL::list::iterator, yaSSL::del_ptr_zero); template bool list::erase(list::iterator); template void list::push_back(yaSSL::ThreadError); template void list::pop_front(); template void list::pop_back(); template list::~list(); template pair* GetArrayMemory >(size_t); template void FreeArrayMemory >(pair*); template pair* GetArrayMemory >(size_t); template void FreeArrayMemory >(pair*); template pair* GetArrayMemory >(size_t); template void FreeArrayMemory >(pair*); template pair* GetArrayMemory >(size_t); template void FreeArrayMemory >(pair*); } namespace yaSSL { template void ysDelete(yaSSL::SSL_CTX*); template void ysDelete(yaSSL::SSL*); template void ysDelete(yaSSL::BIGNUM*); template void ysDelete(unsigned char*); template void ysDelete(yaSSL::DH*); template void ysDelete(TaoCrypt::Signer*); template void ysDelete(yaSSL::SSL_SESSION*); template void ysDelete(input_buffer*); template void ysDelete(output_buffer*); template void ysDelete(x509*); template void ysDelete(Auth*); template void ysDelete(HandShakeBase*); template void ysDelete(ServerKeyBase*); template void ysDelete(ClientKeyBase*); template void ysDelete(SSL_METHOD*); template void ysDelete(DiffieHellman*); template void ysDelete(BulkCipher*); template void ysDelete(Digest*); template void ysDelete(X509*); template void ysDelete(Message*); template void ysDelete(sslFactory*); template void ysDelete(Sessions*); template void ysDelete(Errors*); template void ysArrayDelete(unsigned char*); template void ysArrayDelete(char*); template int min(int, int); template uint16 min(uint16, uint16); template unsigned int min(unsigned int, unsigned int); template unsigned long min(unsigned long, unsigned long); } #endif // HAVE_EXPLICIT_TEMPLATE_INSTANTIATION