1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-29 21:47:30 +03:00

r7321: add nbtd statistics serving over irpc

This commit is contained in:
Andrew Tridgell 2005-06-06 05:47:52 +00:00 committed by Gerald (Jerry) Carter
parent eec521dffd
commit 4c0ed7328b
3 changed files with 32 additions and 1 deletions

View File

@ -26,6 +26,25 @@
#include "nbt_server/nbt_server.h"
/*
serve out the nbt statistics
*/
static NTSTATUS nbtd_information(struct irpc_message *msg,
struct nbtd_information *r)
{
struct nbtd_server *server = talloc_get_type(msg->private, struct nbtd_server);
switch (r->in.level) {
case NBTD_INFO_STATISTICS:
r->out.info.stats = &server->stats;
break;
}
return NT_STATUS_OK;
}
/*
startup the nbtd task
*/
@ -64,6 +83,14 @@ static void nbtd_task_init(struct task_server *task)
return;
}
/* setup monitoring */
status = IRPC_REGISTER(task->msg_ctx, irpc, NBTD_INFORMATION,
nbtd_information, nbtsrv);
if (!NT_STATUS_IS_OK(status)) {
task_terminate(task, "nbtd failed to setup monitoring");
return;
}
/* start the process of registering our names on all interfaces */
nbtd_register_names(nbtsrv);
}

View File

@ -22,6 +22,8 @@
#include "libcli/nbt/libnbt.h"
#include "libcli/dgram/libdgram.h"
#include "librpc/gen_ndr/ndr_irpc.h"
#include "lib/messaging/irpc.h"
/*
a list of our registered names on each interface
@ -70,6 +72,8 @@ struct nbtd_server {
struct nbtd_interface *wins_interface;
struct wins_server *winssrv;
struct nbtd_statistics stats;
};

View File

@ -150,7 +150,7 @@ BOOL torture_local_irpc(void)
msg_ctx = messaging_init(mem_ctx, MSG_ID, ev);
/* register the server side function */
IRPC_REGISTER(msg_ctx, rpcecho, ECHO_ADDONE, irpc_AddOne);
IRPC_REGISTER(msg_ctx, rpcecho, ECHO_ADDONE, irpc_AddOne, NULL);
ret &= test_addone(mem_ctx, msg_ctx);
ret &= test_speed(mem_ctx, msg_ctx, ev);