platform: modularize api/gui, add docs-tests-web foundation, and refresh root config
This commit is contained in:
17
selective-vpn-api/app/transport_client_runtime_alloc.go
Normal file
17
selective-vpn-api/app/transport_client_runtime_alloc.go
Normal file
@@ -0,0 +1,17 @@
|
||||
package app
|
||||
|
||||
func allocateTransportSlots(items []TransportClient) (string, int) {
|
||||
usedMarks := map[uint64]struct{}{}
|
||||
usedPrefs := map[int]struct{}{}
|
||||
for _, it := range items {
|
||||
if n, ok := parseTransportMarkHex(it.MarkHex); ok {
|
||||
usedMarks[n] = struct{}{}
|
||||
}
|
||||
if p, ok := parseTransportPref(it.PriorityBase); ok {
|
||||
usedPrefs[p] = struct{}{}
|
||||
}
|
||||
}
|
||||
mark := nextTransportMark(usedMarks)
|
||||
pref := nextTransportPref(usedPrefs)
|
||||
return formatTransportMarkHex(mark), pref
|
||||
}
|
||||
Reference in New Issue
Block a user