11.3Sjoerg/* $NetBSD: citrus_bcs_strtol.c,v 1.4 2013/04/26 21:20:47 joerg Exp $ */ 21.1Stnozaki 31.1Stnozaki/*- 41.1Stnozaki * Copyright (c) 2005 The DragonFly Project. All rights reserved. 51.1Stnozaki * Copyright (c) 2003, 2008 Citrus Project, 61.1Stnozaki * All rights reserved. 71.1Stnozaki * 81.1Stnozaki * Redistribution and use in source and binary forms, with or without 91.1Stnozaki * modification, are permitted provided that the following conditions 101.1Stnozaki * are met: 111.1Stnozaki * 1. Redistributions of source code must retain the above copyright 121.1Stnozaki * notice, this list of conditions and the following disclaimer. 131.1Stnozaki * 2. Redistributions in binary form must reproduce the above copyright 141.1Stnozaki * notice, this list of conditions and the following disclaimer in the 151.1Stnozaki * documentation and/or other materials provided with the distribution. 161.1Stnozaki * 171.1Stnozaki * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 181.1Stnozaki * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 191.1Stnozaki * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 201.1Stnozaki * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 211.1Stnozaki * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 221.1Stnozaki * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 231.1Stnozaki * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 241.1Stnozaki * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 251.1Stnozaki * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 261.1Stnozaki * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 271.1Stnozaki * SUCH DAMAGE. 281.1Stnozaki */ 291.1Stnozaki 301.1Stnozaki#include <sys/cdefs.h> 311.3Sjoerg__RCSID("$NetBSD: citrus_bcs_strtol.c,v 1.4 2013/04/26 21:20:47 joerg Exp $"); 321.1Stnozaki 331.1Stnozaki#include <assert.h> 341.1Stnozaki#include <errno.h> 351.1Stnozaki#include <limits.h> 361.1Stnozaki#include <stdint.h> 371.1Stnozaki#include <stdlib.h> 381.1Stnozaki 391.1Stnozaki#include "citrus_namespace.h" 401.1Stnozaki#include "citrus_bcs.h" 411.1Stnozaki 421.4Sjoerg#define BCS_ONLY 431.4Sjoerg 441.4Sjoerg#define _FUNCNAME _bcs_strtol 451.4Sjoerg#define __INT long int 461.4Sjoerg#define __INT_MIN LONG_MIN 471.4Sjoerg#define __INT_MAX LONG_MAX 481.4Sjoerg 491.4Sjoerg#undef isspace 501.4Sjoerg#define isspace(c) _bcs_isspace(c) 511.4Sjoerg 521.4Sjoerg#undef isdigit 531.4Sjoerg#define isdigit(c) _bcs_isdigit(c) 541.4Sjoerg 551.4Sjoerg#undef isalpha 561.4Sjoerg#define isalpha(c) _bcs_isalpha(c) 571.4Sjoerg 581.4Sjoerg#undef isupper 591.4Sjoerg#define isupper(c) _bcs_isupper(c) 601.4Sjoerg 611.4Sjoerg#include "_strtol.h" 62