diff --git a/include/polarssl/aes.h b/include/polarssl/aes.h
index 4e87d36..8ecba32 100644
--- a/include/polarssl/aes.h
+++ b/include/polarssl/aes.h
@@ -1,5 +1,23 @@
 /**
  * \file aes.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 #ifndef POLARSSL_AES_H
 #define POLARSSL_AES_H
diff --git a/include/polarssl/arc4.h b/include/polarssl/arc4.h
index 9c20a9e..acbd84a 100644
--- a/include/polarssl/arc4.h
+++ b/include/polarssl/arc4.h
@@ -1,5 +1,23 @@
 /**
  * \file arc4.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 #ifndef POLARSSL_ARC4_H
 #define POLARSSL_ARC4_H
diff --git a/include/polarssl/base64.h b/include/polarssl/base64.h
index ea7e03a..61754d1 100644
--- a/include/polarssl/base64.h
+++ b/include/polarssl/base64.h
@@ -1,5 +1,23 @@
 /**
  * \file base64.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 #ifndef POLARSSL_BASE64_H
 #define POLARSSL_BASE64_H
diff --git a/include/polarssl/bignum.h b/include/polarssl/bignum.h
index 18a1d52..8b23ba9 100644
--- a/include/polarssl/bignum.h
+++ b/include/polarssl/bignum.h
@@ -1,5 +1,23 @@
 /**
  * \file bignum.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 #ifndef POLARSSL_BIGNUM_H
 #define POLARSSL_BIGNUM_H
diff --git a/include/polarssl/bn_mul.h b/include/polarssl/bn_mul.h
index b85bede..2b65a91 100644
--- a/include/polarssl/bn_mul.h
+++ b/include/polarssl/bn_mul.h
@@ -1,5 +1,23 @@
 /**
  * \file bn_mul.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 /*
  *      Multiply source vector [s] with b, add result
diff --git a/include/polarssl/certs.h b/include/polarssl/certs.h
index 6bc74bf..4b61ee1 100644
--- a/include/polarssl/certs.h
+++ b/include/polarssl/certs.h
@@ -1,5 +1,23 @@
 /**
  * \file certs.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 #ifndef POLARSSL_CERTS_H
 #define POLARSSL_CERTS_H
diff --git a/include/polarssl/config.h b/include/polarssl/config.h
index 6fcbc26..9fd0821 100644
--- a/include/polarssl/config.h
+++ b/include/polarssl/config.h
@@ -1,6 +1,24 @@
 /**
  * \file config.h
  *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
  * This set of compile-time options may be used to enable
  * or disable features selectively, and reduce the global
  * memory footprint.
diff --git a/include/polarssl/debug.h b/include/polarssl/debug.h
index 5997d0c..9101aab 100644
--- a/include/polarssl/debug.h
+++ b/include/polarssl/debug.h
@@ -1,5 +1,23 @@
 /**
  * \file debug.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 #ifndef SSL_DEBUG_H
 #define SSL_DEBUG_H
diff --git a/include/polarssl/des.h b/include/polarssl/des.h
index 938e2a8..17c3c8b 100644
--- a/include/polarssl/des.h
+++ b/include/polarssl/des.h
@@ -1,5 +1,23 @@
 /**
  * \file des.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 #ifndef POLARSSL_DES_H
 #define POLARSSL_DES_H
diff --git a/include/polarssl/dhm.h b/include/polarssl/dhm.h
index 0995867..ca59c9a 100644
--- a/include/polarssl/dhm.h
+++ b/include/polarssl/dhm.h
@@ -1,5 +1,23 @@
 /**
  * \file dhm.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 #ifndef POLARSSL_DHM_H
 #define POLARSSL_DHM_H
diff --git a/include/polarssl/havege.h b/include/polarssl/havege.h
index 1ae3342..29c20ab 100644
--- a/include/polarssl/havege.h
+++ b/include/polarssl/havege.h
@@ -1,5 +1,23 @@
 /**
  * \file havege.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 #ifndef POLARSSL_HAVEGE_H
 #define POLARSSL_HAVEGE_H
diff --git a/include/polarssl/md2.h b/include/polarssl/md2.h
index 3952940..fcb804f 100644
--- a/include/polarssl/md2.h
+++ b/include/polarssl/md2.h
@@ -1,5 +1,23 @@
 /**
  * \file md2.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 #ifndef POLARSSL_MD2_H
 #define POLARSSL_MD2_H
diff --git a/include/polarssl/md4.h b/include/polarssl/md4.h
index 1262e01..2bb535b 100644
--- a/include/polarssl/md4.h
+++ b/include/polarssl/md4.h
@@ -1,5 +1,23 @@
 /**
  * \file md4.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 #ifndef POLARSSL_MD4_H
 #define POLARSSL_MD4_H
diff --git a/include/polarssl/md5.h b/include/polarssl/md5.h
index bc1aafc..19acc6b 100644
--- a/include/polarssl/md5.h
+++ b/include/polarssl/md5.h
@@ -1,5 +1,23 @@
 /**
  * \file md5.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 #ifndef POLARSSL_MD5_H
 #define POLARSSL_MD5_H
diff --git a/include/polarssl/net.h b/include/polarssl/net.h
index a8fcdca..aa6f938 100644
--- a/include/polarssl/net.h
+++ b/include/polarssl/net.h
@@ -1,5 +1,23 @@
 /**
  * \file net.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 #ifndef POLARSSL_NET_H
 #define POLARSSL_NET_H
diff --git a/include/polarssl/openssl.h b/include/polarssl/openssl.h
index a9bd3b8..11696a8 100644
--- a/include/polarssl/openssl.h
+++ b/include/polarssl/openssl.h
@@ -1,5 +1,23 @@
 /**
  * \file openssl.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 /*
  * OpenSSL wrapper contributed by David Barett
diff --git a/include/polarssl/padlock.h b/include/polarssl/padlock.h
index e154214..1196c03 100644
--- a/include/polarssl/padlock.h
+++ b/include/polarssl/padlock.h
@@ -1,5 +1,23 @@
 /**
  * \file padlock.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 #ifndef POLARSSL_PADLOCK_H
 #define POLARSSL_PADLOCK_H
diff --git a/include/polarssl/rsa.h b/include/polarssl/rsa.h
index e6302c6..abca193 100644
--- a/include/polarssl/rsa.h
+++ b/include/polarssl/rsa.h
@@ -1,5 +1,23 @@
 /**
  * \file rsa.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 #ifndef POLARSSL_RSA_H
 #define POLARSSL_RSA_H
diff --git a/include/polarssl/sha1.h b/include/polarssl/sha1.h
index 5748fa4..2c4399c 100644
--- a/include/polarssl/sha1.h
+++ b/include/polarssl/sha1.h
@@ -1,5 +1,23 @@
 /**
  * \file sha1.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 #ifndef POLARSSL_SHA1_H
 #define POLARSSL_SHA1_H
diff --git a/include/polarssl/sha2.h b/include/polarssl/sha2.h
index 0304039..abfab56 100644
--- a/include/polarssl/sha2.h
+++ b/include/polarssl/sha2.h
@@ -1,5 +1,23 @@
 /**
  * \file sha2.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 #ifndef POLARSSL_SHA2_H
 #define POLARSSL_SHA2_H
diff --git a/include/polarssl/sha4.h b/include/polarssl/sha4.h
index e4cebf2..ab47dce 100644
--- a/include/polarssl/sha4.h
+++ b/include/polarssl/sha4.h
@@ -1,5 +1,23 @@
 /**
  * \file sha4.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 #ifndef POLARSSL_SHA4_H
 #define POLARSSL_SHA4_H
diff --git a/include/polarssl/ssl.h b/include/polarssl/ssl.h
index 673783d..dee8830 100644
--- a/include/polarssl/ssl.h
+++ b/include/polarssl/ssl.h
@@ -1,5 +1,23 @@
 /**
  * \file ssl.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 #ifndef POLARSSL_SSL_H
 #define POLARSSL_SSL_H
diff --git a/include/polarssl/timing.h b/include/polarssl/timing.h
index 630c8ba..5494f21 100644
--- a/include/polarssl/timing.h
+++ b/include/polarssl/timing.h
@@ -1,5 +1,23 @@
 /**
  * \file timing.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 #ifndef POLARSSL_TIMING_H
 #define POLARSSL_TIMING_H
diff --git a/include/polarssl/x509.h b/include/polarssl/x509.h
index a70e3e9..2492655 100644
--- a/include/polarssl/x509.h
+++ b/include/polarssl/x509.h
@@ -1,5 +1,23 @@
 /**
  * \file x509.h
+ *
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
+ *
+ *  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; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  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; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 #ifndef POLARSSL_X509_H
 #define POLARSSL_X509_H
diff --git a/library/aes.c b/library/aes.c
index 039f3dc..8de06fb 100644
--- a/library/aes.c
+++ b/library/aes.c
@@ -1,7 +1,9 @@
 /*
  *  FIPS-197 compliant AES implementation
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/library/arc4.c b/library/arc4.c
index d15136a..b31849d 100644
--- a/library/arc4.c
+++ b/library/arc4.c
@@ -1,7 +1,9 @@
 /*
  *  An implementation of the ARCFOUR algorithm
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/library/base64.c b/library/base64.c
index 39e9e96..d08c50c 100644
--- a/library/base64.c
+++ b/library/base64.c
@@ -1,7 +1,9 @@
 /*
  *  RFC 1521 base64 encoding/decoding
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/library/bignum.c b/library/bignum.c
index 38d1610..3e3165b 100644
--- a/library/bignum.c
+++ b/library/bignum.c
@@ -1,7 +1,9 @@
 /*
  *  Multi-precision integer library
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/library/certs.c b/library/certs.c
index d696cde..c4328fb 100644
--- a/library/certs.c
+++ b/library/certs.c
@@ -1,7 +1,9 @@
 /*
  *  X.509 test certificates
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/library/debug.c b/library/debug.c
index b2ae548..4fd942e 100644
--- a/library/debug.c
+++ b/library/debug.c
@@ -1,7 +1,9 @@
 /*
  *  Debugging routines
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/library/des.c b/library/des.c
index df60e00..65ab436 100644
--- a/library/des.c
+++ b/library/des.c
@@ -1,7 +1,9 @@
 /*
  *  FIPS-46-3 compliant Triple-DES implementation
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/library/dhm.c b/library/dhm.c
index 0c247af..e92f325 100644
--- a/library/dhm.c
+++ b/library/dhm.c
@@ -1,7 +1,9 @@
 /*
  *  Diffie-Hellman-Merkle key exchange
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/library/havege.c b/library/havege.c
index f191bd7..2d69a48 100644
--- a/library/havege.c
+++ b/library/havege.c
@@ -1,7 +1,9 @@
 /*
  *  HAVEGE: HArdware Volatile Entropy Gathering and Expansion
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/library/md2.c b/library/md2.c
index 6bb46b5..36695ed 100644
--- a/library/md2.c
+++ b/library/md2.c
@@ -1,7 +1,9 @@
 /*
  *  RFC 1115/1319 compliant MD2 implementation
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/library/md4.c b/library/md4.c
index 672520e..7b91948 100644
--- a/library/md4.c
+++ b/library/md4.c
@@ -1,7 +1,9 @@
 /*
  *  RFC 1186/1320 compliant MD4 implementation
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/library/md5.c b/library/md5.c
index a9d8531..3fb5214 100644
--- a/library/md5.c
+++ b/library/md5.c
@@ -1,7 +1,9 @@
 /*
  *  RFC 1321 compliant MD5 implementation
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/library/net.c b/library/net.c
index df79bf3..7486417 100644
--- a/library/net.c
+++ b/library/net.c
@@ -1,7 +1,9 @@
 /*
  *  TCP networking functions
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/library/padlock.c b/library/padlock.c
index e060838..35c5b95 100644
--- a/library/padlock.c
+++ b/library/padlock.c
@@ -1,7 +1,9 @@
 /*
  *  VIA PadLock support functions
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/library/rsa.c b/library/rsa.c
index 3e2d4c6..5236856 100644
--- a/library/rsa.c
+++ b/library/rsa.c
@@ -1,7 +1,9 @@
 /*
  *  The RSA public-key cryptosystem
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/library/sha1.c b/library/sha1.c
index ceb776b..1bc058f 100644
--- a/library/sha1.c
+++ b/library/sha1.c
@@ -1,7 +1,9 @@
 /*
  *  FIPS-180-1 compliant SHA-1 implementation
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/library/sha2.c b/library/sha2.c
index 8181229..278a609 100644
--- a/library/sha2.c
+++ b/library/sha2.c
@@ -1,7 +1,9 @@
 /*
  *  FIPS-180-2 compliant SHA-256 implementation
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/library/sha4.c b/library/sha4.c
index 2634fba..6c5fe37 100644
--- a/library/sha4.c
+++ b/library/sha4.c
@@ -1,7 +1,9 @@
 /*
  *  FIPS-180-2 compliant SHA-384/512 implementation
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/library/ssl_cli.c b/library/ssl_cli.c
index c2832be..9492ce5 100644
--- a/library/ssl_cli.c
+++ b/library/ssl_cli.c
@@ -1,7 +1,9 @@
 /*
  *  SSLv3/TLSv1 client-side functions
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/library/ssl_srv.c b/library/ssl_srv.c
index ead2b20..036344b 100644
--- a/library/ssl_srv.c
+++ b/library/ssl_srv.c
@@ -1,7 +1,9 @@
 /*
  *  SSLv3/TLSv1 server-side functions
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/library/ssl_tls.c b/library/ssl_tls.c
index a591227..3e70ccf 100644
--- a/library/ssl_tls.c
+++ b/library/ssl_tls.c
@@ -1,7 +1,9 @@
 /*
  *  SSLv3/TLSv1 shared functions
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/library/timing.c b/library/timing.c
index 2b52af0..d1a2f81 100644
--- a/library/timing.c
+++ b/library/timing.c
@@ -1,7 +1,9 @@
 /*
  *  Portable interface to the CPU cycle counter
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/library/x509parse.c b/library/x509parse.c
index 02adfa5..a90023b 100644
--- a/library/x509parse.c
+++ b/library/x509parse.c
@@ -1,7 +1,9 @@
 /*
  *  X.509 certificate and private key decoding
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/programs/aes/aescrypt2.c b/programs/aes/aescrypt2.c
index 8e632f0..63dbc93 100644
--- a/programs/aes/aescrypt2.c
+++ b/programs/aes/aescrypt2.c
@@ -1,7 +1,9 @@
 /*
  *  AES-256 file encryption program
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/programs/hash/hello.c b/programs/hash/hello.c
index f1e93ab..9732fb4 100644
--- a/programs/hash/hello.c
+++ b/programs/hash/hello.c
@@ -1,7 +1,9 @@
 /*
  *  Classic "Hello, world" demonstration program
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/programs/hash/md5sum.c b/programs/hash/md5sum.c
index d246900..fae65ce 100644
--- a/programs/hash/md5sum.c
+++ b/programs/hash/md5sum.c
@@ -1,7 +1,9 @@
 /*
  *  md5sum demonstration program
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/programs/hash/sha1sum.c b/programs/hash/sha1sum.c
index 53a97d0..b067921 100644
--- a/programs/hash/sha1sum.c
+++ b/programs/hash/sha1sum.c
@@ -1,7 +1,9 @@
 /*
  *  sha1sum demonstration program
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/programs/hash/sha2sum.c b/programs/hash/sha2sum.c
index beb21cb..e9f4155 100644
--- a/programs/hash/sha2sum.c
+++ b/programs/hash/sha2sum.c
@@ -1,7 +1,9 @@
 /*
  *  sha2sum demonstration program
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/programs/pkey/dh_client.c b/programs/pkey/dh_client.c
index 8bf6b5f..7f1ed18 100644
--- a/programs/pkey/dh_client.c
+++ b/programs/pkey/dh_client.c
@@ -1,7 +1,9 @@
 /*
  *  Diffie-Hellman-Merkle key exchange (client side)
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/programs/pkey/dh_genprime.c b/programs/pkey/dh_genprime.c
index 45605e3..b83517a 100644
--- a/programs/pkey/dh_genprime.c
+++ b/programs/pkey/dh_genprime.c
@@ -1,7 +1,9 @@
 /*
  *  Diffie-Hellman-Merkle key exchange (prime generation)
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/programs/pkey/dh_server.c b/programs/pkey/dh_server.c
index f4b7b44..46f59ba 100644
--- a/programs/pkey/dh_server.c
+++ b/programs/pkey/dh_server.c
@@ -1,7 +1,9 @@
 /*
  *  Diffie-Hellman-Merkle key exchange (server side)
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/programs/pkey/mpi_demo.c b/programs/pkey/mpi_demo.c
index 87737c8..3d16b5a 100644
--- a/programs/pkey/mpi_demo.c
+++ b/programs/pkey/mpi_demo.c
@@ -1,7 +1,9 @@
 /*
  *  Simple MPI demonstration program
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/programs/pkey/rsa_genkey.c b/programs/pkey/rsa_genkey.c
index cd8016d..093e6e9 100644
--- a/programs/pkey/rsa_genkey.c
+++ b/programs/pkey/rsa_genkey.c
@@ -1,7 +1,9 @@
 /*
  *  Example RSA key generation program
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/programs/pkey/rsa_sign.c b/programs/pkey/rsa_sign.c
index 85016b9..0c57bf6 100644
--- a/programs/pkey/rsa_sign.c
+++ b/programs/pkey/rsa_sign.c
@@ -1,7 +1,9 @@
 /*
  *  RSA/SHA-1 signature creation program
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/programs/pkey/rsa_verify.c b/programs/pkey/rsa_verify.c
index a8096f3..9848cc2 100644
--- a/programs/pkey/rsa_verify.c
+++ b/programs/pkey/rsa_verify.c
@@ -1,7 +1,9 @@
 /*
  *  RSA/SHA-1 signature verification program
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/programs/ssl/ssl_client1.c b/programs/ssl/ssl_client1.c
index d99702c..e62ede6 100644
--- a/programs/ssl/ssl_client1.c
+++ b/programs/ssl/ssl_client1.c
@@ -1,7 +1,9 @@
 /*
  *  SSL client demonstration program
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/programs/ssl/ssl_client2.c b/programs/ssl/ssl_client2.c
index d213093..dd04969 100644
--- a/programs/ssl/ssl_client2.c
+++ b/programs/ssl/ssl_client2.c
@@ -1,7 +1,9 @@
 /*
  *  SSL client with certificate authentication
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/programs/ssl/ssl_server.c b/programs/ssl/ssl_server.c
index 4b07ef6..30d8502 100644
--- a/programs/ssl/ssl_server.c
+++ b/programs/ssl/ssl_server.c
@@ -1,7 +1,9 @@
 /*
  *  SSL server demonstration program
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/programs/test/benchmark.c b/programs/test/benchmark.c
index 5058cff..3e70c2c 100644
--- a/programs/test/benchmark.c
+++ b/programs/test/benchmark.c
@@ -1,7 +1,9 @@
 /*
  *  Benchmark demonstration program
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/programs/test/selftest.c b/programs/test/selftest.c
index cf77939..6028573 100644
--- a/programs/test/selftest.c
+++ b/programs/test/selftest.c
@@ -1,7 +1,9 @@
 /*
  *  Self-test demonstration program
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
diff --git a/programs/test/ssl_test.c b/programs/test/ssl_test.c
index ebf2be9..5781ac3 100644
--- a/programs/test/ssl_test.c
+++ b/programs/test/ssl_test.c
@@ -1,7 +1,9 @@
 /*
  *  SSL/TLS stress testing program
  *
- *  Copyright (C) 2006-2007  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *
+ *  Copyright (C) 2009       Paul Bakker
  *
  *  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
