mirror of
https://git.proxmox.com/git/proxmox
synced 2025-05-23 06:14:02 +00:00
use HumanByte for traffic-control config
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
This commit is contained in:
parent
8dbc29bf7a
commit
a70a8ef32e
@ -3,7 +3,7 @@ use serde::{Deserialize, Serialize};
|
|||||||
use proxmox_schema::{api, Schema, IntegerSchema, StringSchema, Updater};
|
use proxmox_schema::{api, Schema, IntegerSchema, StringSchema, Updater};
|
||||||
|
|
||||||
use crate::{
|
use crate::{
|
||||||
CIDR_SCHEMA, DAILY_DURATION_FORMAT,
|
HumanByte, CIDR_SCHEMA, DAILY_DURATION_FORMAT,
|
||||||
PROXMOX_SAFE_ID_FORMAT, SINGLE_LINE_COMMENT_SCHEMA,
|
PROXMOX_SAFE_ID_FORMAT, SINGLE_LINE_COMMENT_SCHEMA,
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -38,19 +38,19 @@ pub const TRAFFIC_CONTROL_BURST_SCHEMA: Schema = IntegerSchema::new(
|
|||||||
schema: SINGLE_LINE_COMMENT_SCHEMA,
|
schema: SINGLE_LINE_COMMENT_SCHEMA,
|
||||||
},
|
},
|
||||||
"rate-in": {
|
"rate-in": {
|
||||||
schema: TRAFFIC_CONTROL_RATE_SCHEMA,
|
type: HumanByte,
|
||||||
optional: true,
|
optional: true,
|
||||||
},
|
},
|
||||||
"burst-in": {
|
"burst-in": {
|
||||||
schema: TRAFFIC_CONTROL_BURST_SCHEMA,
|
type: HumanByte,
|
||||||
optional: true,
|
optional: true,
|
||||||
},
|
},
|
||||||
"rate-out": {
|
"rate-out": {
|
||||||
schema: TRAFFIC_CONTROL_RATE_SCHEMA,
|
type: HumanByte,
|
||||||
optional: true,
|
optional: true,
|
||||||
},
|
},
|
||||||
"burst-out": {
|
"burst-out": {
|
||||||
schema: TRAFFIC_CONTROL_BURST_SCHEMA,
|
type: HumanByte,
|
||||||
optional: true,
|
optional: true,
|
||||||
},
|
},
|
||||||
network: {
|
network: {
|
||||||
@ -79,13 +79,13 @@ pub struct TrafficControlRule {
|
|||||||
/// Rule applies to Source IPs within this networks
|
/// Rule applies to Source IPs within this networks
|
||||||
pub network: Vec<String>,
|
pub network: Vec<String>,
|
||||||
#[serde(skip_serializing_if="Option::is_none")]
|
#[serde(skip_serializing_if="Option::is_none")]
|
||||||
pub rate_in: Option<u64>,
|
pub rate_in: Option<HumanByte>,
|
||||||
#[serde(skip_serializing_if="Option::is_none")]
|
#[serde(skip_serializing_if="Option::is_none")]
|
||||||
pub burst_in: Option<u64>,
|
pub burst_in: Option<HumanByte>,
|
||||||
#[serde(skip_serializing_if="Option::is_none")]
|
#[serde(skip_serializing_if="Option::is_none")]
|
||||||
pub rate_out: Option<u64>,
|
pub rate_out: Option<HumanByte>,
|
||||||
#[serde(skip_serializing_if="Option::is_none")]
|
#[serde(skip_serializing_if="Option::is_none")]
|
||||||
pub burst_out: Option<u64>,
|
pub burst_out: Option<HumanByte>,
|
||||||
// fixme: expose this?
|
// fixme: expose this?
|
||||||
// /// Bandwidth is shared accross all connections
|
// /// Bandwidth is shared accross all connections
|
||||||
// #[serde(skip_serializing_if="Option::is_none")]
|
// #[serde(skip_serializing_if="Option::is_none")]
|
||||||
|
Loading…
Reference in New Issue
Block a user