1 /* 2 * $Id: util.h,v 1.1 1998/05/17 15:27:45 elkner Exp $ 3 * 4 * Author: Harvest/Squid derived http://squid.nlanr.net/Squid/ 5 * Project: Jesred http://ivs.cs.uni-magdeburg.de/~elkner/webtools/jesred/ 6 * 7 * This program is free software; you can redistribute it and/or 8 * modify it under the terms of the GNU General Public License 9 * as published by the Free Software Foundation; either version 2 10 * of the License, or (at your option) any later version. 11 * 12 * This program is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * http://www.gnu.org/copyleft/gpl.html or ./gpl.html 18 * You should have received a copy of the GNU General Public License 19 * along with this program; if not, write to the Free Software 20 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 21 * 22 */ 23 24 /* 25 * Copyright (c) 1994, 1995. All rights reserved. 26 * 27 * The Harvest software was developed by the Internet Research Task 28 * Force Research Group on Resource Discovery (IRTF-RD): 29 * 30 * Mic Bowman of Transarc Corporation. 31 * Peter Danzig of the University of Southern California. 32 * Darren R. Hardy of the University of Colorado at Boulder. 33 * Udi Manber of the University of Arizona. 34 * Michael F. Schwartz of the University of Colorado at Boulder. 35 * Duane Wessels of the University of Colorado at Boulder. 36 * 37 * This copyright notice applies to software in the Harvest 38 * ``src/'' directory only. Users should consult the individual 39 * copyright notices in the ``components/'' subdirectories for 40 * copyright information about other software bundled with the 41 * Harvest source code distribution. 42 * 43 * TERMS OF USE 44 * 45 * The Harvest software may be used and re-distributed without 46 * charge, provided that the software origin and research team are 47 * cited in any use of the system. Most commonly this is 48 * accomplished by including a link to the Harvest Home Page 49 * (http://harvest.cs.colorado.edu/) from the query page of any 50 * Broker you deploy, as well as in the query result pages. These 51 * links are generated automatically by the standard Broker 52 * software distribution. 53 * 54 * The Harvest software is provided ``as is'', without express or 55 * implied warranty, and with no support nor obligation to assist 56 * in its use, correction, modification or enhancement. We assume 57 * no liability with respect to the infringement of copyrights, 58 * trade secrets, or any patents, and are not responsible for 59 * consequential damages. Proper use of the Harvest software is 60 * entirely the responsibility of the user. 61 * 62 * DERIVATIVE WORKS 63 * 64 * Users may make derivative works from the Harvest software, subject 65 * to the following constraints: 66 * 67 * - You must include the above copyright notice and these 68 * accompanying paragraphs in all forms of derivative works, 69 * and any documentation and other materials related to such 70 * distribution and use acknowledge that the software was 71 * developed at the above institutions. 72 * 73 * - You must notify IRTF-RD regarding your distribution of 74 * the derivative work. 75 * 76 * - You must clearly notify users that your are distributing 77 * a modified version and not the original Harvest software. 78 * 79 * - Any derivative product is also subject to these copyright 80 * and use restrictions. 81 * 82 * Note that the Harvest software is NOT in the public domain. We 83 * retain copyright, as specified above. 84 * 85 * HISTORY OF FREE SOFTWARE STATUS 86 * 87 * Originally we required sites to license the software in cases 88 * where they were going to build commercial products/services 89 * around Harvest. In June 1995 we changed this policy. We now 90 * allow people to use the core Harvest software (the code found in 91 * the Harvest ``src/'' directory) for free. We made this change 92 * in the interest of encouraging the widest possible deployment of 93 * the technology. The Harvest software is really a reference 94 * implementation of a set of protocols and formats, some of which 95 * we intend to standardize. We encourage commercial 96 * re-implementations of code complying to this set of standards. 97 */ 98 99 #ifndef UTIL_H 100 #define UTIL_H 101 102 #define safe_free(x) if (x) { free(x); x = NULL; } 103 104 extern void HUPhandler(int); 105 extern void KILLhandler(int); 106 extern void *xcalloc(size_t, size_t); 107 extern char *savestr(const char *); 108 extern void delstr(char *); 109 110 #endif 111