/*
* os_netbsd.cpp
*
- * Home page of code is: http://smartmontools.sourceforge.net
+ * Home page of code is: http://www.smartmontools.org
*
* Copyright (C) 2003-8 Sergey Svishchev <smartmontools-support@lists.sourceforge.net>
*
#include <errno.h>
#include <unistd.h>
-const char * os_netbsd_cpp_cvsid = "$Id: os_netbsd.cpp 3806 2013-03-29 20:17:03Z chrfranke $"
+const char * os_netbsd_cpp_cvsid = "$Id: os_netbsd.cpp 4205 2016-01-22 15:22:53Z samm2 $"
OS_NETBSD_H_CVSID;
/* global variable holding byte count of allocated memory */
extern long long bytes;
enum warnings {
- BAD_SMART, NO_3WARE, NO_ARECA, MAX_MSG
+ BAD_SMART, MAX_MSG
};
/* Utility function for printing warnings */
n++;
}
- mp = (char **)realloc(mp, n * (sizeof(char *)));
+ void * tmp = (char **)realloc(mp, n * (sizeof(char *)));
+ if (NULL == tmp) {
+ pout("Out of memory constructing scan device list\n");
+ free(mp);
+ return -1;
+ }
+ else
+ mp = tmp;
bytes += (n) * (sizeof(char *));
*names = mp;
return n;
return 0;
}
- if ((retval = ioctl(fd, ATAIOCCOMMAND, &req))) {
+ retval = ioctl(fd, ATAIOCCOMMAND, &req);
+ if (retval < 0) {
perror("Failed command");
return -1;
}