This commit is contained in:
2023-09-18 15:56:53 +08:00
parent fa587e8f4a
commit 98fcdff349
3 changed files with 375 additions and 8 deletions

View File

@@ -86,7 +86,7 @@ udm:
type: "int"
value: "1"
access: "read-only"
filter: '^\d{1,2}$'
filter: '1~16'
display: "Index"
comment: "1~16"
- name: "name"
@@ -117,7 +117,7 @@ udm:
type: "int"
value: "1"
access: "read-only"
filter: '^\d{1,2}$'
filter: '1~16'
display: "Index"
comment: "1~16"
- name: "name"
@@ -155,7 +155,7 @@ udm:
type: "int"
value: "1"
access: "read-only"
filter: '^\d{1,2}$'
filter: '1~16'
display: "Index"
comment: "1~16"
- name: "name"
@@ -186,7 +186,7 @@ udm:
type: "int"
value: "1"
access: "read-only"
filter: '^\d{1,2}$'
filter: '1~16'
display: "Index"
comment: "1~16"
- name: "name"
@@ -305,7 +305,7 @@ udm:
type: "int"
value: "1"
access: "read-only"
filter: '^\d{1,2}$'
filter: '1~16'
display: "Index"
comment: "1~16"
- name: "name"
@@ -434,3 +434,322 @@ udm:
filter: "{\"0\":\"notPreemptable\",\"1\":\"preemptable\"}"
display: "ARP PreemptVuln"
comment: ""
epsTemplate:
display: "Eps User Template"
array:
- name: "index"
type: "int"
value: "1"
access: "read-only"
filter: '1~16'
display: "Index"
comment: "1~16"
- name: "name"
type: "string"
value: 'def_eps'
access: "read-write"
filter: '^.{0,31}$'
display: "Name"
comment: "0~31"
- name: "ambrUplink"
type: "int"
value: '100000000'
access: "read-write"
filter: '0~4294967295'
display: "AMBR Uplink"
comment: "0~4294967295"
- name: "ambrDownlink"
type: "int"
value: '200000000'
access: "read-write"
filter: '0~4294967295'
display: "AMBR Downlink"
comment: "0~4294967295"
- name: "apnOIReplacement"
type: "string"
value: 'money'
access: "read-write"
filter: '^.{0,31}$'
display: "APN OI Replacement"
comment: "0~31"
- name: "rfsp"
type: "int"
value: '1'
access: "read-write"
filter: ''
display: "rfsp"
comment: ""
- name: "rauTauTimer"
type: "int"
value: '120'
access: "read-write"
filter: ''
display: "Rau Tau Timer"
comment: ""
- name: "chargingCharacteristic"
type: "string"
value: '0001'
access: "read-write"
filter: '4~4'
display: "Charging Characteristic"
comment: "4~4"
epsApn:
display: "Eps Apn"
array:
- name: "index"
type: "int"
value: "1"
access: "read-only"
filter: '1~16'
display: "Index"
comment: "1~16"
- name: "dnn"
type: "string"
value: 'cmnet'
access: "read-write"
filter: '^.{0,127}$'
display: "Dnn"
comment: "0~127"
- name: "pdnType"
type: "enum"
value: '0'
access: "read-write"
filter: "{\"0\":\"ipv4\",\"1\":\"ipv6\",\"2\":\"ipv4v6\",\"3\":\"ipv4oripv6\"}"
display: "Pdn Type"
comment: ""
- name: "contextIdentifier"
type: "int"
value: '1'
access: "read-write"
filter: ''
display: "Context Identifier"
comment: ""
- name: "vplmnDynamicAddressAllowed"
type: "enum"
value: '0'
access: "read-write"
filter: "{\"0\":\"notallowed\",\"1\":\"allowed\"}"
display: "Vplmn Dynamic Address Allowed"
comment: ""
- name: "pdnGWAllocationType"
type: "enum"
value: '0'
access: "read-write"
filter: "{\"0\":\"static\",\"1\":\"dynamic\"}"
display: "Pdn GW Allocation Type"
comment: ""
- name: "ambrUplink"
type: "int"
value: '100000000'
access: "read-write"
filter: '0~4294967295'
display: "AMBR Uplink"
comment: "0~4294967295"
- name: "ambrDownlink"
type: "int"
value: '200000000'
access: "read-write"
filter: '0~4294967295'
display: "AMBR Downlink"
comment: "0~4294967295"
- name: "chargingCharacteristic"
type: "string"
value: '0001'
access: "read-write"
filter: '4~4'
display: "Charging Characteristic"
comment: "4~4"
- name: "qci"
type: "int"
value: '9'
access: "read-write"
filter: '1~255'
display: "qci"
comment: "1~255"
- name: "arpPriorityLevel"
type: "int"
value: '8'
access: "read-write"
filter: '1~127'
display: "ARP Priority"
comment: "1~127"
- name: "arpPreemptCap"
type: "enum"
value: '0'
access: "read-write"
filter: "{\"0\":\"notPreempt\",\"1\":\"mayPreempt\"}"
display: "ARP Preemption Capability"
comment: ""
- name: "arpPreemptVuln"
type: "enum"
value: '0'
access: "read-write"
filter: "{\"0\":\"notPreemptable\",\"1\":\"preemptable\"}"
display: "ARP Preemption Vulnerability"
comment: ""
applicationServer:
display: "Application Server"
array:
- name: "index"
type: "int"
value: "1"
access: "read-only"
filter: '1~32'
display: "Index"
comment: "1~32"
- name: "name"
type: "string"
value: 'mmtel_as'
access: "read-write"
filter: '^.{0,31}$'
display: "AS Name"
comment: "0~31"
- name: "defaultHandling"
type: "enum"
value: '0'
access: "read-write"
filter: "{\"0\":\"sessionContinued\",\"1\":\"sessionTerminated\"}"
display: "Default Handling"
comment: ""
- name: "serverName"
type: "string"
value: 'sip:192.168.8.26:7060'
access: "read-write"
filter: '^.{0,127}$'
display: "Server Name"
comment: "0~127"
- name: "diameterAddress"
type: "string"
value: 'mmtel.ims.mnc000.mcc460.3gppnetwork.org'
access: "read-write"
filter: '^.{0,127}$'
display: "Diameter Address"
comment: "0~127"
- name: "repDataSizeLimit"
type: "int"
value: '0'
access: "read-write"
filter: '0~65535'
display: "Rep Data Size Limit"
comment: "0~65535"
- name: "includeRegisterRequest"
type: "enum"
value: 'false'
access: "read-write"
filter: 'false;true;'
display: "Include Register Request"
comment: ""
- name: "includeRegisterResponse"
type: "bool"
value: 'false'
access: "read-write"
filter: 'false;true;'
display: "Include Register Response"
comment: ""
scscfSet:
display: "Scscf Set"
array:
- name: "index"
type: "int"
value: "1"
access: "read-only"
filter: '1~8'
display: "Index"
comment: "1~8"
- name: "name"
type: "string"
value: 'mmtel_as'
access: "read-write"
filter: '^.{0,31}$'
display: "Name"
comment: "0~31"
- name: "priority"
type: "int"
value: '1'
access: "read-write"
filter: ''
display: "Priority"
comment: ""
- name: "serverName"
type: "string"
value: 'sip:scscf.ims.mnc000.mcc460.3gppnetwork.org:6060'
access: "read-write"
filter: '^.{0,127}$'
display: "Server Name"
comment: "0~127"
s6aServer:
display: "S6a Server"
list:
- name: "enable"
type: "bool"
value: 'true'
access: "read-write"
filter: 'false;true;'
display: "enable"
comment: ""
- name: "netType"
type: "enum"
value: '1'
access: "read-write"
filter: "{\"0\":\"tcp\",\"1\":\"sctp\"}"
display: "Link Type"
comment: ""
- name: "addr"
type: "string"
value: "172.16.5.140:3868"
access: "read-write"
filter: ''
display: "address"
comment: ""
- name: "host"
type: "string"
value: "hss.ims.mnc000.mcc460.3gppnetwork.org"
access: "read-write"
filter: '^.{0,127}$'
display: "host"
comment: "0~127"
- name: "realm"
type: "string"
value: "ims.mnc000.mcc460.3gppnetwork.org"
access: "read-write"
filter: '^.{0,127}$'
display: "realm"
comment: "0~127"
cxServer:
display: "Cx Server"
list:
- name: "enable"
type: "bool"
value: 'true'
access: "read-write"
filter: 'false;true;'
display: "enable"
comment: ""
- name: "netType"
type: "enum"
value: '0'
access: "read-write"
filter: "{\"0\":\"tcp\",\"1\":\"sctp\"}"
display: "Link Type"
comment: ""
- name: "addr"
type: "string"
value: "172.16.5.140:3868"
access: "read-write"
filter: ''
display: "address"
comment: ""
- name: "host"
type: "string"
value: "hss.ims.mnc000.mcc460.3gppnetwork.org"
access: "read-write"
filter: '^.{0,127}$'
display: "host"
comment: "0~127"
- name: "realm"
type: "string"
value: "ims.mnc000.mcc460.3gppnetwork.org"
access: "read-write"
filter: '^.{0,127}$'
display: "realm"
comment: "0~127"

View File

@@ -189,7 +189,7 @@ func UploadSoftwareFile(w http.ResponseWriter, r *http.Request) {
}
func UploadSoftwareMultiFile(w http.ResponseWriter, r *http.Request) {
log.Debug("UploadSoftwareFile processing... ")
log.Info("UploadSoftwareMultiFile processing... ")
_, err := services.CheckFrontValidRequest(w, r)
if err != nil {
@@ -674,7 +674,7 @@ func ActiveSoftwareToNF(w http.ResponseWriter, r *http.Request) {
if !config.GetYamlConfig().OMC.TestMode {
filePath := (*neVersion)[0]["file_path"]
sshHost := fmt.Sprintf("%s@%s", config.GetYamlConfig().NE.User, neInfo.Ip)
fileType, err := global.JudgeRpmOrDebPackage(filePath)
fileType, err := global.IsRpmOrDebPackage(filePath)
if err != nil {
log.Error("Failed to JudgeRpmOrDebPackage:", err)
services.ResponseInternalServerError500ProcessError(w, err)

View File

@@ -608,7 +608,55 @@ func JudgeRpmOrDebPackage(filePath string) (int, error) {
} else if string(header) == "!<arch\n" || string(header) == "!<arch\r" {
fileType = 2
} else {
fileType = 3
fileType = 0
}
return fileType, nil
}
func isRpmPackage(file *os.File) bool {
// RPM packages start with the magic number "EDABEEDB"
magic := []byte{0xED, 0xAB, 0xEE, 0xDB}
buffer := make([]byte, len(magic))
_, err := file.Read(buffer)
if err != nil && err != io.EOF {
return false
}
return string(buffer) == string(magic)
}
func isDebPackage(file *os.File) bool {
// DEB packages start with the magic number "!<arch>\n"
magic := []byte("!<arch>\n")
buffer := make([]byte, len(magic))
_, err := file.Read(buffer)
if err != nil && err != io.EOF {
return false
}
return string(buffer) == string(magic)
}
func IsRpmOrDebPackage(filePath string) (int, error) {
var fileType int = 0
file, err := os.Open(filePath)
if err != nil {
return fileType, err
}
defer file.Close()
isRpm := isRpmPackage(file)
isDeb := isDebPackage(file)
if isRpm {
fileType = 1
} else if isDeb {
fileType = 2
} else {
fileType = 0
}
return fileType, nil