X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/1c79356b52d46aa6b508fb032f5ae709b1f2897b..593a1d5fd87cdf5b46dd5fcb84467b432cea0f91:/osfmk/ddb/db_lex.c diff --git a/osfmk/ddb/db_lex.c b/osfmk/ddb/db_lex.c index efafadfab..d79305736 100644 --- a/osfmk/ddb/db_lex.c +++ b/osfmk/ddb/db_lex.c @@ -1,23 +1,29 @@ /* - * Copyright (c) 2000 Apple Computer, Inc. All rights reserved. + * Copyright (c) 2000-2006 Apple Computer, Inc. All rights reserved. * - * @APPLE_LICENSE_HEADER_START@ + * @APPLE_OSREFERENCE_LICENSE_HEADER_START@ * - * The contents of this file constitute Original Code as defined in and - * are subject to the Apple Public Source License Version 1.1 (the - * "License"). You may not use this file except in compliance with the - * License. Please obtain a copy of the License at - * http://www.apple.com/publicsource and read it before using this file. + * This file contains Original Code and/or Modifications of Original Code + * as defined in and that are subject to the Apple Public Source License + * Version 2.0 (the 'License'). You may not use this file except in + * compliance with the License. The rights granted to you under the License + * may not be used to create, or enable the creation or redistribution of, + * unlawful or unlicensed copies of an Apple operating system, or to + * circumvent, violate, or enable the circumvention or violation of, any + * terms of an Apple operating system software license agreement. * - * This Original Code and all software distributed under the License are - * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER + * Please obtain a copy of the License at + * http://www.opensource.apple.com/apsl/ and read it before using this file. + * + * The Original Code and all software distributed under the License are + * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the - * License for the specific language governing rights and limitations - * under the License. + * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. + * Please see the License for the specific language governing rights and + * limitations under the License. * - * @APPLE_LICENSE_HEADER_END@ + * @APPLE_OSREFERENCE_LICENSE_HEADER_END@ */ /* * @OSF_COPYRIGHT@ @@ -146,7 +152,7 @@ /* * Lexical analyzer. */ -#include /* For strcpy(), strncmp(), strlen() */ +#include /* For strlcpy(), strlcmp(), strlen() */ #include #include #include @@ -154,8 +160,8 @@ char db_line[DB_LEX_LINE_SIZE]; char db_last_line[DB_LEX_LINE_SIZE]; -char *db_lp, *db_endlp; -char *db_last_lp; +const char *db_lp, *db_endlp; +const char *db_last_lp; int db_look_char = 0; db_expr_t db_look_token = 0; @@ -167,7 +173,7 @@ void db_unread_char(int c); int -db_read_line(char *repeat_last) +db_read_line(const char *repeat_last) { int i; @@ -176,11 +182,11 @@ db_read_line(char *repeat_last) return (0); /* EOI */ if (repeat_last) { if (strncmp(db_line, repeat_last, strlen(repeat_last)) == 0) { - strcpy(db_line, db_last_line); + strlcpy(db_line, db_last_line, DB_LEX_LINE_SIZE); db_printf("%s", db_line); i = strlen(db_line); } else if (db_line[0] != '\n' && db_line[0] != 0) - strcpy(db_last_line, db_line); + strlcpy(db_last_line, db_line, DB_LEX_LINE_SIZE); } db_lp = db_line; db_endlp = db_lp + i; @@ -199,9 +205,7 @@ db_flush_line(void) } void -db_switch_input( - char *buffer, - int size) +db_switch_input(const char *buffer, int size) { db_lp = buffer; db_last_lp = db_lp; @@ -296,7 +300,7 @@ db_skip_to_eol(void) register int skip; register int t; register int n; - register char *p; + const char *p; t = db_read_token(); p = db_last_lp; @@ -562,7 +566,7 @@ db_lex(void) case '?': return (tQUESTION); case -1: - strcpy(db_tok_string, ""); + strlcpy(db_tok_string, "", TOK_STRING_SIZE); return (tEOF); } db_printf("Bad character '%c'\n", c);