Add IPV4 properties parameter validation

Added parameter validation for the IPV4 properties: IP Address,
Gateway, and Netmask prefix length.
This is important since we delete the IPV4 interface before adding
the new one (i.e. if the add is unsuccessful we are down an IPV4
interface). This validation helps to prevent some of the
unsuccessful adds.

Took the logic from the network manager valid parameter checks:
https://github.com/openbmc/phosphor-networkd/blob/master/util.cpp#L217

Moved "Netmask Prefix Length" to a "number" to do this. It should
have been a number.

Tested: A variety of good and bad values.
Change-Id: Idf4486489097bc426164b9543ea8c05eb54a2bf8
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
diff --git a/app/common/services/api-utils.js b/app/common/services/api-utils.js
index 43d4772..d7e4e7f 100644
--- a/app/common/services/api-utils.js
+++ b/app/common/services/api-utils.js
@@ -56,6 +56,11 @@
                   });
           return deferred.promise;
         },
+        validIPV4IP: function(ip) {
+          // Checks for [0-255].[0-255].[0-255].[0-255]
+          return ip.match(
+              /\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b/);
+        },
         getHostState: function() {
           var deferred = $q.defer();
           $http({