Skip to content

Commit 42655ab

Browse files
authored
Merge pull request #1626 from microsoft/wip-irene-tcp-refactor
runtime: Add max buffer size to inetstack from the network runtime
2 parents c1f4e07 + 3fc348e commit 42655ab

4 files changed

Lines changed: 16 additions & 0 deletions

File tree

src/inetstack/mod.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -294,6 +294,10 @@ impl NetworkTransport for SharedInetStack {
294294
/// This implements the memory runtime trait for the inetstack. Other libOSes without a network runtime can directly
295295
/// use OS memory but the inetstack requires specialized memory allocated by the lower-level runtime.
296296
impl DemiMemoryAllocator for SharedInetStack {
297+
fn max_buffer_size_bytes(&self) -> usize {
298+
self.layer4_endpoint.max_buffer_size_bytes()
299+
}
300+
297301
fn allocate_demi_buffer(&self, size: usize) -> Result<DemiBuffer, Fail> {
298302
self.layer4_endpoint.allocate_demi_buffer(size)
299303
}

src/inetstack/protocols/layer2/mod.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,6 +129,10 @@ impl DerefMut for SharedLayer2Endpoint {
129129
}
130130

131131
impl DemiMemoryAllocator for SharedLayer2Endpoint {
132+
fn max_buffer_size_bytes(&self) -> usize {
133+
self.layer1_endpoint.max_buffer_size_bytes()
134+
}
135+
132136
fn allocate_demi_buffer(&self, size: usize) -> Result<DemiBuffer, Fail> {
133137
self.layer1_endpoint.allocate_demi_buffer(size)
134138
}

src/inetstack/protocols/layer3/mod.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -193,6 +193,10 @@ impl DerefMut for SharedLayer3Endpoint {
193193

194194
/// Memory Runtime Trait Implementation for Layer 3.
195195
impl DemiMemoryAllocator for SharedLayer3Endpoint {
196+
fn max_buffer_size_bytes(&self) -> usize {
197+
self.layer2_endpoint.max_buffer_size_bytes()
198+
}
199+
196200
fn allocate_demi_buffer(&self, size: usize) -> Result<DemiBuffer, Fail> {
197201
self.layer2_endpoint.allocate_demi_buffer(size)
198202
}

src/inetstack/protocols/layer4/mod.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -394,6 +394,10 @@ impl Peer {
394394
//======================================================================================================================
395395

396396
impl DemiMemoryAllocator for Peer {
397+
fn max_buffer_size_bytes(&self) -> usize {
398+
self.layer3_endpoint.max_buffer_size_bytes()
399+
}
400+
397401
fn allocate_demi_buffer(&self, size: usize) -> Result<DemiBuffer, Fail> {
398402
self.layer3_endpoint.allocate_demi_buffer(size)
399403
}

0 commit comments

Comments
 (0)