From 88ff05a0d2da80666b66db2c6dc977802924e659 Mon Sep 17 00:00:00 2001 From: chrfranke <chrfranke@4ea69e1a-61f1-4043-bf83-b5c94c648137> Date: Tue, 17 Apr 2007 21:10:59 +0000 Subject: [PATCH] Fixed smartd crash on missing '-s' directive argument git-svn-id: https://smartmontools.svn.sourceforge.net/svnroot/smartmontools/trunk@2397 4ea69e1a-61f1-4043-bf83-b5c94c648137 --- sm5/CHANGELOG | 4 +++- sm5/smartd.cpp | 8 ++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/sm5/CHANGELOG b/sm5/CHANGELOG index b457c6a29..1282ad089 100644 --- a/sm5/CHANGELOG +++ b/sm5/CHANGELOG @@ -1,6 +1,6 @@ CHANGELOG for smartmontools -$Id: CHANGELOG,v 1.609 2007/04/03 18:23:27 shattered Exp $ +$Id: CHANGELOG,v 1.610 2007/04/17 21:10:59 chrfranke Exp $ The most recent version of this file is: http://smartmontools.cvs.sourceforge.net/smartmontools/sm5/CHANGELOG?view=markup @@ -33,6 +33,8 @@ NOTES FOR FUTURE RELEASES: see TODO file. <DEVELOPERS: ADDITIONS TO THE CHANGE LOG GO JUST BELOW HERE, PLEASE> + [CF] Fixed smartd crash on missing '-s' directive argument. + [SS] Support CCISS on FreeBSD (kernel source is required). [DG] SCSI/TAPE: some IBM tape drives don't react properly to a LOG diff --git a/sm5/smartd.cpp b/sm5/smartd.cpp index bf0ad2091..fd5097d6e 100644 --- a/sm5/smartd.cpp +++ b/sm5/smartd.cpp @@ -119,14 +119,14 @@ extern "C" int getdomainname(char *, int); // no declaration in header files! extern const char *atacmdnames_c_cvsid, *atacmds_c_cvsid, *ataprint_c_cvsid, *escalade_c_cvsid, *knowndrives_c_cvsid, *os_XXXX_c_cvsid, *scsicmds_c_cvsid, *utility_c_cvsid; -static const char *filenameandversion="$Id: smartd.cpp,v 1.387 2007/02/26 19:53:59 dpgilbert Exp $"; +static const char *filenameandversion="$Id: smartd.cpp,v 1.388 2007/04/17 21:10:59 chrfranke Exp $"; #ifdef NEED_SOLARIS_ATA_CODE extern const char *os_solaris_ata_s_cvsid; #endif #ifdef _WIN32 extern const char *daemon_win32_c_cvsid, *hostname_win32_c_cvsid, *syslog_win32_c_cvsid; #endif -const char *smartd_c_cvsid="$Id: smartd.cpp,v 1.387 2007/02/26 19:53:59 dpgilbert Exp $" +const char *smartd_c_cvsid="$Id: smartd.cpp,v 1.388 2007/04/17 21:10:59 chrfranke Exp $" ATACMDS_H_CVSID ATAPRINT_H_CVSID CONFIG_H_CVSID #ifdef DAEMON_WIN32_H_CVSID DAEMON_WIN32_H_CVSID @@ -1100,7 +1100,7 @@ void PrintHead(){ #else const char * ver = SMARTMONTOOLS_BUILD_HOST; #endif - PrintOut(LOG_INFO,"smartd version %s [%s] Copyright (C) 2002-6 Bruce Allen\n", PACKAGE_VERSION, ver); + PrintOut(LOG_INFO,"smartd version %s [%s] Copyright (C) 2002-7 Bruce Allen\n", PACKAGE_VERSION, ver); PrintOut(LOG_INFO,"Home page is " PACKAGE_HOMEPAGE "\n\n"); return; } @@ -3205,7 +3205,7 @@ int ParseToken(char *token,cfgfile *cfg){ // Do a bit of sanity checking and warn user if we think that // their regexp is "strange". User probably confused about shell // glob(3) syntax versus regular expression syntax regexp(7). - if ((int)strlen(arg) != (val=strspn(arg,"0123456789/.-+*|()?^$[]SLCO"))) + else if ((int)strlen(arg) != (val=strspn(arg,"0123456789/.-+*|()?^$[]SLCO"))) PrintOut(LOG_INFO, "File %s line %d (drive %s): warning, character %d (%c) looks odd in extended regular expression %s\n", configfile, lineno, name, val+1, arg[val], arg); break; -- GitLab