post quantum cryptography
Highly optimized implementation of the NTRUEncrypt algorithm
|
00001 /* 00002 * Copyright (C) 2014 FH Bielefeld 00003 * 00004 * This file is part of a FH Bielefeld project. 00005 * 00006 * This library is free software; you can redistribute it and/or 00007 * modify it under the terms of the GNU Lesser General Public 00008 * License as published by the Free Software Foundation; either 00009 * version 2.1 of the License, or (at your option) any later version. 00010 * 00011 * This library is distributed in the hope that it will be useful, 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00014 * Lesser General Public License for more details. 00015 * 00016 * You should have received a copy of the GNU Lesser General Public 00017 * License along with this library; if not, write to the Free Software 00018 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 00019 * MA 02110-1301 USA 00020 */ 00021 00029 #include "ntru_mem.h" 00030 00031 #include <stdio.h> 00032 #include <stdlib.h> 00033 00034 00035 /*------------------------------------------------------------------------*/ 00036 00037 void * 00038 ntru_malloc(size_t size) 00039 { 00040 void *ptr; 00041 00042 ptr = malloc(size); 00043 00044 if (size) 00045 if (!ptr) { 00046 fprintf(stderr, "failed to allocate memory, aborting!"); 00047 abort(); 00048 } 00049 00050 return ptr; 00051 } 00052 00053 /*------------------------------------------------------------------------*/ 00054 00055 void * 00056 ntru_calloc(size_t nmemb, size_t size) 00057 { 00058 void *ptr; 00059 00060 ptr = calloc(nmemb, size); 00061 00062 if (size) 00063 if (!ptr) { 00064 fprintf(stderr, "failed to allocate memory, aborting!"); 00065 abort(); 00066 } 00067 00068 return ptr; 00069 } 00070 00071 /*------------------------------------------------------------------------*/