From 2ec2f52013d2adab32c21d3eace1febc38fa1600 Mon Sep 17 00:00:00 2001
From: Malte Bauch <malte.bauch@extern.h-da.de>
Date: Tue, 10 May 2022 14:42:40 +0200
Subject: [PATCH] Add admin-status

---
 os_clients/ubuntu/ubuntu.go | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/os_clients/ubuntu/ubuntu.go b/os_clients/ubuntu/ubuntu.go
index b6367df..aeb51a9 100644
--- a/os_clients/ubuntu/ubuntu.go
+++ b/os_clients/ubuntu/ubuntu.go
@@ -1,6 +1,7 @@
 package ubuntu
 
 import (
+	"net"
 	"os"
 	"os/exec"
 	"strings"
@@ -74,6 +75,14 @@ func (ou OsclientUbuntu) createInterfaces(localIface netlink.Link, gt *gnmitarge
 
 	state.OperStatus = setOperState(attributes.OperState)
 
+	if attributes.Flags&net.FlagUp != 0 {
+		state.AdminStatus = gnmitargetygot.OpenconfigInterfaces_Interfaces_Interface_State_AdminStatus_UP
+	}
+
+	if attributes.Flags&net.FlagLoopback != 0 {
+		state.LoopbackMode = ygot.Bool(true)
+	}
+
 	ipv4Addresses, err := netlink.AddrList(localIface, netlink.FAMILY_V4)
 	if err != nil {
 		log.WithFields(log.Fields{}).Error(err)
-- 
GitLab