diff --git a/hal/inc/PrefixParser.h b/hal/inc/PrefixParser.h
index 4682aa5..99afbe0 100644
--- a/hal/inc/PrefixParser.h
+++ b/hal/inc/PrefixParser.h
@@ -57,6 +57,7 @@
     int size();
     bool allAreFullyQualified();
     Prefix getFirstPrefix();
+    Prefix getFirstPrefix(IP_FAM);
     string getLastErrAsStr();
 private:
     bool add(string /* in */, IP_FAM /* famHint */);
diff --git a/hal/src/HAL.cpp b/hal/src/HAL.cpp
index c4d9722..d1d10fd 100644
--- a/hal/src/HAL.cpp
+++ b/hal/src/HAL.cpp
@@ -521,8 +521,8 @@
     } else if (iface.size()>= 1) {
         RET ipaReturn = mIPA->setUpstream(
                 iface.c_str(),
-                v4GwParser.getFirstPrefix(),
-                v6GwParser.getFirstPrefix());
+                v4GwParser.getFirstPrefix(IP_FAM::V4),
+                v6GwParser.getFirstPrefix(IP_FAM::V6));
         BoolResult res = ipaResultToBoolResult(ipaReturn);
         hidl_cb(res.success, res.errMsg);
         fl.setResult(res.success, res.errMsg);
@@ -530,8 +530,8 @@
 	/* send NULL iface string when upstream down */
         RET ipaReturn = mIPA->setUpstream(
                 NULL,
-                v4GwParser.getFirstPrefix(),
-                v6GwParser.getFirstPrefix());
+                v4GwParser.getFirstPrefix(IP_FAM::V4),
+                v6GwParser.getFirstPrefix(IP_FAM::V6));
         BoolResult res = ipaResultToBoolResult(ipaReturn);
         hidl_cb(res.success, res.errMsg);
         fl.setResult(res.success, res.errMsg);
diff --git a/hal/src/PrefixParser.cpp b/hal/src/PrefixParser.cpp
index d38bec0..ff55147 100644
--- a/hal/src/PrefixParser.cpp
+++ b/hal/src/PrefixParser.cpp
@@ -111,6 +111,12 @@
     return makeBlankPrefix(IP_FAM::INVALID);
 } /* getFirstPrefix */
 
+Prefix PrefixParser::getFirstPrefix(IP_FAM famHint) {
+    if (size() >= 1)
+        return mPrefixes[0];
+    return makeBlankPrefix(famHint);
+} /* getFirstPrefix */
+
 string PrefixParser::getLastErrAsStr() {
     return mLastErr;
 } /* getLastErrAsStr */
