Check-in often, they says...

git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4812 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Philippe Houdoin
2003-09-25 13:52:42 +00:00
parent 374076c9d6
commit 917c92eeed
6 changed files with 47 additions and 14 deletions
+9 -3
View File
@@ -95,7 +95,7 @@ status_t start_buffers_service()
#endif #endif
// fire buffers_purgatory_thread // fire buffers_purgatory_thread
g_buffers_purgatory_thread = spawn_kernel_thread(buffers_purgatory_thread, "net buffers serial killer", B_LOW_PRIORITY, 0); g_buffers_purgatory_thread = spawn_kernel_thread(buffers_purgatory_thread, "buffers serial killer", B_LOW_PRIORITY, 0);
if (g_buffers_purgatory_thread < B_OK) if (g_buffers_purgatory_thread < B_OK)
return g_buffers_purgatory_thread; return g_buffers_purgatory_thread;
@@ -242,6 +242,12 @@ net_buffer * split_buffer(net_buffer *buffer, uint32 offset)
return NULL; // B_UNSUPPORTED; return NULL; // B_UNSUPPORTED;
} }
// --------------------------------------------------
status_t merge_buffers(net_buffer *begin_buffer, net_buffer *end_buffer)
{
return B_ERROR;
}
// -------------------------------------------------- // --------------------------------------------------
status_t attach_buffer_free_element(net_buffer *buffer, void *arg1, void *arg2, buffer_chunk_free_func freethis) status_t attach_buffer_free_element(net_buffer *buffer, void *arg1, void *arg2, buffer_chunk_free_func freethis)
@@ -514,7 +520,7 @@ status_t find_buffer_attribut(net_buffer *buffer, const char *name, int *type, v
} }
// #pragma mark [data(s) queues functions] // #pragma mark [buffer(s) queues functions]
// -------------------------------------------------- // --------------------------------------------------
net_buffer_queue * new_buffer_queue(size_t max_bytes) net_buffer_queue * new_buffer_queue(size_t max_bytes)
@@ -834,7 +840,7 @@ void dump_memory
for (j = i; j < len && j < i+16;j++) for (j = i; j < len && j < i+16;j++)
{ {
if ( byte[j] >= ' ' && byte[j] < 0x7e ) if ( byte[j] >= 0x20 && byte[j] < 0x7e )
*ptr = byte[j]; *ptr = byte[j];
else else
*ptr = '.'; *ptr = '.';
@@ -23,6 +23,7 @@ extern status_t delete_buffer(net_buffer *buffer, bool interrupt_safe);
extern net_buffer * duplicate_buffer(net_buffer *from); extern net_buffer * duplicate_buffer(net_buffer *from);
extern net_buffer * clone_buffer(net_buffer *from); extern net_buffer * clone_buffer(net_buffer *from);
extern net_buffer * split_buffer(net_buffer *from, uint32 offset); extern net_buffer * split_buffer(net_buffer *from, uint32 offset);
extern status_t merge_buffers(net_buffer *begin, net_buffer *end);
extern status_t add_to_buffer(net_buffer *buffer, uint32 offset, const void *data, uint32 bytes, buffer_chunk_free_func freethis); extern status_t add_to_buffer(net_buffer *buffer, uint32 offset, const void *data, uint32 bytes, buffer_chunk_free_func freethis);
extern status_t remove_from_buffer(net_buffer *buffer, uint32 offset, uint32 bytes); extern status_t remove_from_buffer(net_buffer *buffer, uint32 offset, uint32 bytes);
@@ -210,6 +210,30 @@ status_t unregister_layer(net_layer *layer)
} }
// --------------------------------------------------
net_layer * find_layer(const char *name)
{
net_layer *layer;
status_t status;
if (!name)
return NULL;
status = acquire_sem(g_layers.lock);
if (status != B_OK)
return NULL;
layer = g_layers.first;
while (layer) {
if (strcmp(layer->name, name) == 0)
break;
layer = layer->next;
}
release_sem(g_layers.lock);
return layer;
}
// -------------------------------------------------- // --------------------------------------------------
status_t add_layer_attribut(net_layer *layer, const char *name, int type, ...) status_t add_layer_attribut(net_layer *layer, const char *name, int type, ...)
{ {
@@ -17,6 +17,7 @@ extern status_t stop_layers_manager();
extern status_t register_layer(const char *name, net_layer_module_info *module, void *cookie, extern status_t register_layer(const char *name, net_layer_module_info *module, void *cookie,
net_layer **me); net_layer **me);
extern status_t unregister_layer(net_layer *layer); extern status_t unregister_layer(net_layer *layer);
extern net_layer * find_layer(const char *name);
extern status_t add_layer_attribut(net_layer *layer, const char *name, int type, ...); extern status_t add_layer_attribut(net_layer *layer, const char *name, int type, ...);
extern status_t remove_layer_attribut(net_layer *layer, const char *name); extern status_t remove_layer_attribut(net_layer *layer, const char *name);
@@ -73,6 +73,7 @@ struct net_stack_module_info nsmi = {
// Layers handling // Layers handling
register_layer, register_layer,
unregister_layer, unregister_layer,
find_layer,
add_layer_attribut, add_layer_attribut,
remove_layer_attribut, remove_layer_attribut,
find_layer_attribut, find_layer_attribut,
+1 -1
View File
@@ -57,7 +57,7 @@ status_t start_timers_service()
set_sem_owner(g_timers.wait, B_SYSTEM_TEAM); set_sem_owner(g_timers.wait, B_SYSTEM_TEAM);
#endif #endif
g_timers_thread = spawn_kernel_thread(timers_thread, "net timers lone runner", B_URGENT_DISPLAY_PRIORITY, &g_timers); g_timers_thread = spawn_kernel_thread(timers_thread, "timers lone runner", B_URGENT_DISPLAY_PRIORITY, &g_timers);
if (g_timers_thread < B_OK) if (g_timers_thread < B_OK)
return g_timers_thread; return g_timers_thread;