Convert return error code in XfrmController to Status

Bug: 62056515
Test: runtest -x tests/netd_integration_test.cpp
Change-Id: I70022ba00f76776c3de05b7df33ce2be840d75ce
diff --git a/server/XfrmController.h b/server/XfrmController.h
index fdad82f..0a58250 100644
--- a/server/XfrmController.h
+++ b/server/XfrmController.h
@@ -29,6 +29,7 @@
 #include <utils/RWLock.h>
 
 #include "NetdConstants.h"
+#include "netdutils/Status.h"
 
 namespace android {
 namespace net {
@@ -53,14 +54,15 @@
         mSock = -1;
     }
 
-    virtual bool open() = 0;
+    virtual netdutils::Status open() = 0;
 
     virtual ~XfrmSocket() { close(); }
 
     // Sends the netlink message contained in iovecs. This populates iovecs[0] with
     // a valid netlink message header.
-    virtual int sendMessage(uint16_t nlMsgType, uint16_t nlMsgFlags, uint16_t nlMsgSeqNum,
-                            std::vector<iovec>* iovecs) const = 0;
+    virtual netdutils::Status sendMessage(uint16_t nlMsgType, uint16_t nlMsgFlags,
+                                          uint16_t nlMsgSeqNum,
+                                          std::vector<iovec>* iovecs) const = 0;
 
 protected:
     int mSock;
@@ -117,26 +119,29 @@
 public:
     XfrmController();
 
-    int ipSecAllocateSpi(int32_t transformId, int32_t direction, const std::string& localAddress,
-                         const std::string& remoteAddress, int32_t inSpi, int32_t* outSpi);
+    netdutils::Status ipSecAllocateSpi(int32_t transformId, int32_t direction,
+                                       const std::string& localAddress,
+                                       const std::string& remoteAddress, int32_t inSpi,
+                                       int32_t* outSpi);
 
-    int ipSecAddSecurityAssociation(
+    netdutils::Status ipSecAddSecurityAssociation(
         int32_t transformId, int32_t mode, int32_t direction, const std::string& localAddress,
         const std::string& remoteAddress, int64_t underlyingNetworkHandle, int32_t spi,
         const std::string& authAlgo, const std::vector<uint8_t>& authKey, int32_t authTruncBits,
         const std::string& cryptAlgo, const std::vector<uint8_t>& cryptKey, int32_t cryptTruncBits,
         int32_t encapType, int32_t encapLocalPort, int32_t encapRemotePort);
 
-    int ipSecDeleteSecurityAssociation(int32_t transformId, int32_t direction,
-                                       const std::string& localAddress,
-                                       const std::string& remoteAddress, int32_t spi);
+    netdutils::Status ipSecDeleteSecurityAssociation(int32_t transformId, int32_t direction,
+                                                     const std::string& localAddress,
+                                                     const std::string& remoteAddress, int32_t spi);
 
-    int ipSecApplyTransportModeTransform(const android::base::unique_fd& socket,
-                                         int32_t transformId, int32_t direction,
-                                         const std::string& localAddress,
-                                         const std::string& remoteAddress, int32_t spi);
+    netdutils::Status ipSecApplyTransportModeTransform(const android::base::unique_fd& socket,
+                                                       int32_t transformId, int32_t direction,
+                                                       const std::string& localAddress,
+                                                       const std::string& remoteAddress,
+                                                       int32_t spi);
 
-    int ipSecRemoveTransportModeTransform(const android::base::unique_fd& socket);
+    netdutils::Status ipSecRemoveTransportModeTransform(const android::base::unique_fd& socket);
 
     // Exposed for testing
     static constexpr size_t MAX_ALGO_LENGTH = 128;
@@ -212,11 +217,12 @@
 #endif
 
     // helper function for filling in the XfrmSaInfo structure
-    static int fillXfrmSaId(int32_t direction, const std::string& localAddress,
-                            const std::string& remoteAddress, int32_t spi, XfrmSaId* xfrmId);
+    static netdutils::Status fillXfrmSaId(int32_t direction, const std::string& localAddress,
+                                          const std::string& remoteAddress, int32_t spi,
+                                          XfrmSaId* xfrmId);
 
     // Top level functions for managing a Transport Mode Transform
-    static int addTransportModeTransform(const XfrmSaInfo& record);
+    static netdutils::Status addTransportModeTransform(const XfrmSaInfo& record);
     static int removeTransportModeTransform(const XfrmSaInfo& record);
 
     // TODO(messagerefactor): FACTOR OUT ALL MESSAGE BUILDING CODE BELOW HERE
@@ -229,18 +235,19 @@
     static int fillNlAttrXfrmEncapTmpl(const XfrmSaInfo& record, nlattr_encap_tmpl* tmpl);
 
     // Functions for Creating a Transport Mode SA
-    static int createTransportModeSecurityAssociation(const XfrmSaInfo& record,
-                                                      const XfrmSocket& sock);
+    static netdutils::Status createTransportModeSecurityAssociation(const XfrmSaInfo& record,
+                                                                    const XfrmSocket& sock);
     static int fillUserSaInfo(const XfrmSaInfo& record, xfrm_usersa_info* usersa);
 
     // Functions for deleting a Transport Mode SA
-    static int deleteSecurityAssociation(const XfrmSaId& record, const XfrmSocket& sock);
+    static netdutils::Status deleteSecurityAssociation(const XfrmSaId& record,
+                                                       const XfrmSocket& sock);
     static int fillUserSaId(const XfrmSaId& record, xfrm_usersa_id* said);
     static int fillUserTemplate(const XfrmSaInfo& record, xfrm_user_tmpl* tmpl);
     static int fillTransportModeUserSpInfo(const XfrmSaInfo& record, xfrm_userpolicy_info* usersp);
 
-    static int allocateSpi(const XfrmSaInfo& record, uint32_t minSpi, uint32_t maxSpi,
-                           uint32_t* outSpi, const XfrmSocket& sock);
+    static netdutils::Status allocateSpi(const XfrmSaInfo& record, uint32_t minSpi, uint32_t maxSpi,
+                                         uint32_t* outSpi, const XfrmSocket& sock);
 
     // END TODO(messagerefactor)
 };