From a3e1c2903dd75b77176dd7a1b13e5a87ef04e7f5 Mon Sep 17 00:00:00 2001 From: bg Date: Wed, 4 Feb 2009 13:53:55 +0000 Subject: [PATCH] forgotten files --- string-extras.c | 63 +++++++++++++++++++++++++++++++++++++++++++++++++ string-extras.h | 29 +++++++++++++++++++++++ 2 files changed, 92 insertions(+) create mode 100644 string-extras.c create mode 100644 string-extras.h diff --git a/string-extras.c b/string-extras.c new file mode 100644 index 0000000..6952265 --- /dev/null +++ b/string-extras.c @@ -0,0 +1,63 @@ +/* string_extras.c */ +/* + This file is part of the AVR-Crypto-Lib. + Copyright (C) 2008 Daniel Otte (daniel.otte@rub.de) + + 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 3 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, see . +*/ +/** + * \file string_extras.c + * \author Daniel Otte + * \date 2006-05-16 + * \license GPLv3 or later + * + */ + +#include +#include + +uint16_t stridentcnt_P(char* a, PGM_P b){ + uint16_t i=0; + char c; + for(;;){ + c = pgm_read_byte(b++); + if(*a != c || c=='\0') + return i; + i++; + a++; + } +} + +uint16_t firstword_length(char* s){ + uint16_t ret=0; + while(isgraph(*s++)) + ret++; + return ret; +} + +char* strstrip(char* str){ + if(!str) + return str; + char* endptr; + while(*str && (*str==' ' || *str=='\t')) + ++str; + endptr=str; + while(*endptr) + ++endptr; + do{ + --endptr; + }while(*endptr==' ' || *endptr=='\t'); + endptr[1]='\0'; + return str; +} diff --git a/string-extras.h b/string-extras.h new file mode 100644 index 0000000..457f9a7 --- /dev/null +++ b/string-extras.h @@ -0,0 +1,29 @@ +/* string_extras.h */ +/* + This file is part of the AVR-Crypto-Lib. + Copyright (C) 2008 Daniel Otte (daniel.otte@rub.de) + + 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 3 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, see . +*/ +/** + * \file string_extras.h + * \author Daniel Otte + * \date 2006-05-16 + * \license GPLv3 or later + * + */ + +uint16_t stridentcnt_P(char* a, PGM_P b); +uint16_t firstword_length(char* s); +char* strstrip(char*); -- 2.39.2