git.stg.codes
/
stg.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Break internal classes to interface and implementation
[stg.git]
/
include
/
user_ips.h
diff --git
a/include/user_ips.h
b/include/user_ips.h
index d3e640c16e3754fd7fd9c0ad17e1f44835c40455..250520b28f7eca14cc353020166f9d7ac0048956 100644
(file)
--- a/
include/user_ips.h
+++ b/
include/user_ips.h
@@
-27,16
+27,19
@@
#ifndef USER_IPS_H
#define USER_IPS_H
#ifndef USER_IPS_H
#define USER_IPS_H
+#ifdef FREE_BSD
+#include <sys/types.h>
+#endif
+
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <arpa/inet.h>
+
+#include <cstring>
#include <vector>
#include <vector>
-//#include <algorithm>
#include <string>
#include <iostream>
#include <sstream>
#include <string>
#include <iostream>
#include <sstream>
-#include <cstring>
-/////////////////////////
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
#include "common.h"
#include "os_int.h"
#include "common.h"
#include "os_int.h"
@@
-202,8
+205,7
@@
std::vector<std::string> ipMask;
std::string err;
if (ipsStr.empty())
{
std::string err;
if (ipsStr.empty())
{
- err = "Incorrect IP address.";
- throw(err);
+ return ips;
}
if (ipsStr[0] == '*' && ipsStr.size() == 1)
}
if (ipsStr[0] == '*' && ipsStr.size() == 1)
@@
-235,7
+237,7
@@
for (unsigned int i = 0; i < ipMask.size(); i++)
if (strIp == NULL)
{
err = "Incorrect IP address " + ipsStr;
if (strIp == NULL)
{
err = "Incorrect IP address " + ipsStr;
-
throw(err)
;
+
return ips
;
}
strMask = strtok(NULL, "/");
}
strMask = strtok(NULL, "/");
@@
-243,7
+245,7
@@
for (unsigned int i = 0; i < ipMask.size(); i++)
if (im.ip == INADDR_NONE)
{
err = "Incorrect IP address: " + std::string(strIp);
if (im.ip == INADDR_NONE)
{
err = "Incorrect IP address: " + std::string(strIp);
-
throw(err)
;
+
return ips
;
}
im.mask = 32;
}
im.mask = 32;
@@
-253,20
+255,20
@@
for (unsigned int i = 0; i < ipMask.size(); i++)
if (str2x(strMask, m) != 0)
{
err = "Incorrect mask: " + std::string(strMask);
if (str2x(strMask, m) != 0)
{
err = "Incorrect mask: " + std::string(strMask);
-
throw(err)
;
+
return ips
;
}
im.mask = m;
if (im.mask > 32)
{
err = "Incorrect mask: " + std::string(strMask);
}
im.mask = m;
if (im.mask > 32)
{
err = "Incorrect mask: " + std::string(strMask);
-
throw(err)
;
+
return ips
;
}
if ((im.ip & ips.CalcMask(im.mask)) != im.ip)
{
err = "Address does'n match mask: " + std::string(strIp) + "/" + std::string(strMask);
}
if ((im.ip & ips.CalcMask(im.mask)) != im.ip)
{
err = "Address does'n match mask: " + std::string(strIp) + "/" + std::string(strMask);
-
throw(err)
;
+
return ips
;
}
}
ips.ips.push_back(im);
}
}
ips.ips.push_back(im);
@@
-276,5
+278,3
@@
return ips;
}
//-------------------------------------------------------------------------
#endif //USER_IPS_H
}
//-------------------------------------------------------------------------
#endif //USER_IPS_H
-
-