Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- [mihailim@home ~]$ ping 0xc0a8010a
- PING 0xc0a8010a (192.168.1.10) 56(84) bytes of data.
- ^C
- --- 0xc0a8010a ping statistics ---
- 3 packets transmitted, 0 received, 100% packet loss, time 2479ms
- bool Config::validateIpAddress(const string ipAddress)
- {
- struct sockaddr_in sa;
- int result = inet_pton(AF_INET, ipAddress.c_str(), &(sa.sin_addr));
- return result != 0;
- }
- std::string ipAddress = "127.0.0.1";
- boost::system::error_code ec;
- boost::asio::ip::address::from_string( ipAddress, ec );
- if ( ec )
- std::cerr << ec.message( ) << std::endl;
- bool IsIPAddress(std::string & ipaddr)
- {
- StringTokenizer quads(ipaddr,".");
- if (quads.countTokens() != 4) return false;
- for (int i=0; i < 4; i++)
- {
- std::string quad = quads.nextToken();
- for (int j=0; j < quad.length(); j++
- if (!isdigit(quad[j])) return false;
- int quad = atoi(quads.GetTokenAt(i));
- if (quad < 0) || (quad > 255)) return false;
- }
- return true;
- }
- bool validate_ip_address(const std::string& s)
- {
- static const boost::regex e("\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}");
- return regex_match(s, e);
- }
- vector<string> &split(const string &s, char delim, vector<string> &elems) {
- stringstream ss(s);
- string item;
- while(getline(ss, item, delim)) {
- elems.push_back(item);
- }
- return elems;
- }
- vector<string> split(const string &s, char delim) {
- vector<string> elems;
- return split(s, delim, elems);
- }
- bool isIPAddress(string ipaddr){
- if (ipaddr.length()){
- vector<string> _ip=split(ipaddr,'.');
- if (_ip.size()==4){
- for (int i=0; i < 4; i++){
- for (int j=0; j < _ip[i].length(); j++)
- if (!isdigit(_ip[i][j])) return false;
- if ((atoi(_ip[i].c_str()) < 0) || (atoi(_ip[i].c_str()) > 255)) return false;
- }
- return true;
- }
- }
- return false;
- }
Add Comment
Please, Sign In to add comment