move iovec_iter_kernel out of header
This commit is contained in:
@@ -44,6 +44,22 @@ static errno_t iovec_iter_copy(iovec_iter_t* iter, void* buf, size_t len, bool t
|
|||||||
return status;
|
return status;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
iovec_iter_t iovec_iter_kernel(iovec_t* iovecs, size_t count) {
|
||||||
|
size_t total = 0;
|
||||||
|
for (size_t i = 0; i < count; i++)
|
||||||
|
total += iovecs[i].len;
|
||||||
|
|
||||||
|
return (iovec_iter_t){
|
||||||
|
.iovecs = iovecs,
|
||||||
|
.iovecs_len = count,
|
||||||
|
.total_len = total,
|
||||||
|
.total_offset = 0,
|
||||||
|
.current_idx = 0,
|
||||||
|
.current_offset = 0,
|
||||||
|
.user = false,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
errno_t iovec_iter_copy_to(iovec_iter_t* iter, const void* src, size_t len, size_t* out_copied) {
|
errno_t iovec_iter_copy_to(iovec_iter_t* iter, const void* src, size_t len, size_t* out_copied) {
|
||||||
return iovec_iter_copy(iter, (void*)src, len, true, out_copied);
|
return iovec_iter_copy(iter, (void*)src, len, true, out_copied);
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-15
@@ -24,21 +24,7 @@ static inline size_t iovec_iter_len(iovec_iter_t* iter) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Creates an iovec iterator over kernel memory.
|
// Creates an iovec iterator over kernel memory.
|
||||||
static inline iovec_iter_t iovec_iter_kernel(iovec_t* iovecs, size_t count) {
|
iovec_iter_t iovec_iter_kernel(iovec_t* iovecs, size_t count);
|
||||||
size_t total = 0;
|
|
||||||
for (size_t i = 0; i < count; i++)
|
|
||||||
total += iovecs[i].len;
|
|
||||||
|
|
||||||
return (iovec_iter_t){
|
|
||||||
.iovecs = iovecs,
|
|
||||||
.iovecs_len = count,
|
|
||||||
.total_len = total,
|
|
||||||
.total_offset = 0,
|
|
||||||
.current_idx = 0,
|
|
||||||
.current_offset = 0,
|
|
||||||
.user = false,
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
// Copies up to `len` bytes from `src` into the iterator and advances it.
|
// Copies up to `len` bytes from `src` into the iterator and advances it.
|
||||||
// Returns the amount of bytes actually copied in `out_copied`.
|
// Returns the amount of bytes actually copied in `out_copied`.
|
||||||
|
|||||||
Reference in New Issue
Block a user