svn commit: samba r16220 - in branches/tmp/vl-messaging/source: .
include lib param
ab at samba.org
ab at samba.org
Wed Jun 14 14:26:19 GMT 2006
Author: ab
Date: 2006-06-14 14:26:18 +0000 (Wed, 14 Jun 2006)
New Revision: 16220
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=16220
Log:
Compile in all messaging alternatives, make them selectable at run-time only.
TDB messaging is used by default.
Modified:
branches/tmp/vl-messaging/source/Makefile.in
branches/tmp/vl-messaging/source/configure.in
branches/tmp/vl-messaging/source/include/messages.h
branches/tmp/vl-messaging/source/lib/messages.c
branches/tmp/vl-messaging/source/lib/messages_socket.c
branches/tmp/vl-messaging/source/param/loadparm.c
Changeset:
Modified: branches/tmp/vl-messaging/source/Makefile.in
===================================================================
--- branches/tmp/vl-messaging/source/Makefile.in 2006-06-14 12:00:53 UTC (rev 16219)
+++ branches/tmp/vl-messaging/source/Makefile.in 2006-06-14 14:26:18 UTC (rev 16220)
@@ -171,12 +171,13 @@
AUTH_MODULES = @AUTH_MODULES@
MODULES = $(VFS_MODULES) $(PDB_MODULES) $(RPC_MODULES) $(IDMAP_MODULES) $(CHARSET_MODULES) $(AUTH_MODULES)
-MESSAGING_OBJ = @MESSAGING_FILES@
-
######################################################################
# object file lists
######################################################################
+MESSAGING_OBJ = lib/messages.o lib/messages_tdb.o lib/messages_socket.o \
+ lib/messages_dgram.o lib/messages_stream.o
+
TDBBASE_OBJ = tdb/tdb.o tdb/dump.o tdb/error.o tdb/freelist.o tdb/io.o \
tdb/lock.o tdb/open.o tdb/transaction.o tdb/traverse.o
Modified: branches/tmp/vl-messaging/source/configure.in
===================================================================
--- branches/tmp/vl-messaging/source/configure.in 2006-06-14 12:00:53 UTC (rev 16219)
+++ branches/tmp/vl-messaging/source/configure.in 2006-06-14 14:26:18 UTC (rev 16220)
@@ -4080,39 +4080,6 @@
esac
fi
-#################################################
-# Selecting messaging type
-
-AC_ARG_WITH(messaging,
-[ --with-messaging=TYPES Comma-seperated list of compiled in messaging types: tdb, dgram, stream, tcp],
-[ if test $withval; then
- for i in `echo $withval | sed -e 's/,/ /g'`
- do
- eval ENABLE_MESSAGING_$i=1
- done
-fi ], [eval ENABLE_MESSAGING_tdb=1])
-
-MESSAGING_FILES="lib/messages.o"
-
-if test x"$ENABLE_MESSAGING_tdb" != x; then
- AC_DEFINE(WITH_TDB_MESSAGING,1,[Use tdb messaging implementation])
- MESSAGING_FILES="$MESSAGING_FILES lib/messages_tdb.o"
-fi
-
-if test x"$ENABLE_MESSAGING_dgram" != x -o x"$ENABLE_MESSAGING_stream" != x; then
- MESSAGING_FILES="$MESSAGING_FILES lib/messages_socket.o"
-fi
-if test x"$ENABLE_MESSAGING_dgram" != x; then
- MESSAGING_FILES="$MESSAGING_FILES lib/messages_dgram.o"
- AC_DEFINE(WITH_DGRAM_MESSAGING,1,[Use unix datagram sockets messaging implementation])
-fi
-if test x"$ENABLE_MESSAGING_stream" != x; then
- MESSAGING_FILES="$MESSAGING_FILES lib/messages_stream.o"
- AC_DEFINE(WITH_STREAM_MESSAGING,1,[Use unix stream sockets messaging implementation])
-fi
-
-AC_SUBST(MESSAGING_FILES)
-
#############################################
# only check for quota stuff if --with-quotas
if test x"$samba_cv_RUN_QUOTA_TESTS" != x"no"; then
Modified: branches/tmp/vl-messaging/source/include/messages.h
===================================================================
--- branches/tmp/vl-messaging/source/include/messages.h 2006-06-14 12:00:53 UTC (rev 16219)
+++ branches/tmp/vl-messaging/source/include/messages.h 2006-06-14 14:26:18 UTC (rev 16220)
@@ -42,10 +42,7 @@
#define MSG_REQ_DMALLOC_LOG_CHANGED 12
#define MSG_SHUTDOWN 13
-
-#ifdef WITH_STREAM_MESSAGING
#define MSG_HELLO 14
-#endif /* WITH_STREAM_MESSAGING */
/* nmbd messages */
#define MSG_FORCE_ELECTION 1001
Modified: branches/tmp/vl-messaging/source/lib/messages.c
===================================================================
--- branches/tmp/vl-messaging/source/lib/messages.c 2006-06-14 12:00:53 UTC (rev 16219)
+++ branches/tmp/vl-messaging/source/lib/messages.c 2006-06-14 14:26:18 UTC (rev 16220)
@@ -105,8 +105,6 @@
BOOL message_init(void)
{
switch((enum messaging_type)lp_messaging_type()) {
-
-#ifdef WITH_TDB_MESSAGING
case MESSAGING_TYPE_TDB:
message_send_pid_func = message_send_pid_tdb;
message_select_setup_func = NULL;
@@ -114,25 +112,14 @@
retrieve_all_messages_func = retrieve_all_messages_tdb;
if(!message_init_tdb()) return False;
break;
-#endif /* WITH_TDB_MESSAGING */
-
-#ifdef WITH_DGRAM_MESSAGING
case MESSAGING_TYPE_DGRAM:
-#endif /* WITH_DGRAM_MESSAGING */
-
-#ifdef WITH_STREAM_MESSAGING
case MESSAGING_TYPE_STREAM:
-#endif /* WITH_STREAM_MESSAGING */
-
-#if defined(WITH_DGRAM_MESSAGING) || defined(WITH_STREAM_MESSAGING)
message_send_pid_func = message_send_pid_socket;
message_select_setup_func = message_select_setup_socket;
message_receive_func = message_receive_socket;
retrieve_all_messages_func = retrieve_all_messages_socket;
if(!message_init_socket()) return False;
break;
-#endif /* WITH_(DGRAM or STREAM_MESSAGING */
-
default:
DEBUG(0,("Unsupported messaging type %d\n",
lp_messaging_type()));
@@ -155,13 +142,13 @@
BOOL message_reinit(void)
{
-#if defined(WITH_DGRAM_MESSAGING) || defined(WITH_STREAM_MESSAGING)
- if ((enum messaging_type)lp_messaging_type() == MESSAGING_TYPE_DGRAM ||
- (enum messaging_type)lp_messaging_type() == MESSAGING_TYPE_STREAM) {
+
+ enum messaging_type m_type = (enum messaging_type)lp_messaging_type();
+ if ((m_type == MESSAGING_TYPE_DGRAM) ||
+ (m_type == MESSAGING_TYPE_STREAM)) {
shutdown_sockets();
return message_init_socket();
}
-#endif /* WITH_(DGRAM or STREAM)_MESSAGING */
return True;
}
@@ -171,12 +158,11 @@
BOOL message_end(void)
{
-#if defined(WITH_DGRAM_MESSAGING) || defined(WITH_STREAM_MESSAGING)
- if ((enum messaging_type)lp_messaging_type() == MESSAGING_TYPE_DGRAM ||
- (enum messaging_type)lp_messaging_type() == MESSAGING_TYPE_STREAM) {
+ enum messaging_type m_type = (enum messaging_type)lp_messaging_type();
+ if ((m_type == MESSAGING_TYPE_DGRAM) ||
+ (m_type == MESSAGING_TYPE_STREAM)) {
shutdown_sockets();
}
-#endif /* WITH_(DGRAM or STREAM)_MESSAGING */
message_send_pid_func = NULL;
message_select_setup_func = NULL;
@@ -228,20 +214,13 @@
unsigned int messages_pending_for_pid(struct process_id pid)
{
-#ifdef WITH_TDB_MESSAGING
- if ((enum messaging_type)lp_messaging_type() == MESSAGING_TYPE_TDB) {
+ switch((enum messaging_type)lp_messaging_type()) {
+ case MESSAGING_TYPE_TDB:
return messages_pending_for_pid_tdb(pid);
- } else
-#endif /* WITH_TDB_MESSAGING */
-
-#if defined(WITH_DGRAM_MESSAGING) || defined(WITH_STREAM_MESSAGING)
- if ((enum messaging_type)lp_messaging_type() == MESSAGING_TYPE_DGRAM ||
- (enum messaging_type)lp_messaging_type() == MESSAGING_TYPE_STREAM) {
+ case MESSAGING_TYPE_DGRAM:
+ case MESSAGING_TYPE_STREAM:
return messages_pending_for_pid_socket(pid);
- } else
-#endif /* WITH_(DGRAM or STREAM)_MESSAGING */
-
- {
+ default:
DEBUG(0,("Bad messaging type %d\n", lp_messaging_type()));
return 0;
}
@@ -517,19 +496,15 @@
void message_block(void)
{
-#ifdef WITH_TDB_MESSAGING
if ((enum messaging_type)lp_messaging_type() == MESSAGING_TYPE_TDB) {
message_block_tdb();
}
-#endif /* WITH_TDB_MESSAGING */
}
void message_unblock(void)
{
-#ifdef WITH_TDB_MESSAGING
if ((enum messaging_type)lp_messaging_type() == MESSAGING_TYPE_TDB) {
message_unblock_tdb();
}
-#endif /* WITH_TDB_MESSAGING */
}
/** @} **/
Modified: branches/tmp/vl-messaging/source/lib/messages_socket.c
===================================================================
--- branches/tmp/vl-messaging/source/lib/messages_socket.c 2006-06-14 12:00:53 UTC (rev 16219)
+++ branches/tmp/vl-messaging/source/lib/messages_socket.c 2006-06-14 14:26:18 UTC (rev 16220)
@@ -53,11 +53,9 @@
{
if (sent_messages != NULL) return False;
-#ifdef WITH_STREAM_MESSAGING
if ((enum messaging_type)lp_messaging_type() == MESSAGING_TYPE_STREAM) {
return can_close_messaging_stream();
}
-#endif /* WITH_STREAM_MESSAGING */
return True;
}
@@ -97,12 +95,9 @@
cleanup_messages();
if (socket_fd >= 0) {
-#ifdef WITH_STREAM_MESSAGING
if ((enum messaging_type)lp_messaging_type() == MESSAGING_TYPE_STREAM) {
shutdown_stream_sockets();
}
-#endif /* WITH_STREAM_MESSAGING */
-
close(socket_fd);
socket_fd = -1;
}
@@ -123,28 +118,20 @@
SMB_ASSERT(socket_fd == -1);
-#ifdef WITH_DGRAM_MESSAGING
- if ((enum messaging_type)lp_messaging_type() == MESSAGING_TYPE_DGRAM) {
+ if((enum messaging_type)lp_messaging_type() == MESSAGING_TYPE_DGRAM) {
receive_on_socket_func = receive_on_socket_dgram;
- send_on_socket_func = send_on_socket_dgram;
-
+ send_on_socket_func = send_on_socket_dgram;
socket_fd = create_dgram_sock(lock_path("messaging"),
- procid_str_static(&socket_pid),
- 0700);
- }
-#endif /* WITH_DGRAM_MESSAGING */
-
-#ifdef WITH_STREAM_MESSAGING
- if ((enum messaging_type)lp_messaging_type() == MESSAGING_TYPE_STREAM) {
+ procid_str_static(&socket_pid),
+ 0700);
+ } else {
receive_on_socket_func = receive_on_socket_stream;
send_on_socket_func = send_on_socket_stream;
-
socket_fd = create_pipe_sock(lock_path("messaging"),
- procid_str_static(&socket_pid),
- 0700);
+ procid_str_static(&socket_pid),
+ 0700);
}
-#endif /* WITH_STREAM_MESSAGING */
-
+
if (socket_fd < 0) {
DEBUG(0, ("Could not create socket: %s\n",
strerror(errno)));
@@ -184,13 +171,10 @@
BOOL duplicates_allowed,
unsigned int timeout)
{
-#ifdef WITH_STREAM_MESSAGING
if ((enum messaging_type)lp_messaging_type() == MESSAGING_TYPE_STREAM) {
return message_send_pid_stream(pid, msg_type, buf, len,
- duplicates_allowed, timeout);
- } else
-#endif /* WITH_STREAM_MESSAGING */
- {
+ duplicates_allowed, timeout);
+ } else {
struct message_list *li, *tmp;
uint8_t* buffer;
@@ -249,11 +233,9 @@
}
*maxfd = MAX(*maxfd, socket_fd);
-#ifdef WITH_STREAM_MESSAGING
if ((enum messaging_type)lp_messaging_type() == MESSAGING_TYPE_STREAM) {
message_select_setup_stream(maxfd, rfds, wfds);
}
-#endif /* WITH_STREAM_MESSAGING */
}
/****************************************************************************
@@ -273,13 +255,9 @@
affected++;
}
-#ifdef WITH_STREAM_MESSAGING
if ((enum messaging_type)lp_messaging_type() == MESSAGING_TYPE_STREAM) {
- affected += message_receive_stream(rfds, wfds,
- &received_messages);
+ affected += message_receive_stream(rfds, wfds, &received_messages);
}
-#endif /* WITH_STREAM_MESSAGING */
-
return affected;
}
Modified: branches/tmp/vl-messaging/source/param/loadparm.c
===================================================================
--- branches/tmp/vl-messaging/source/param/loadparm.c 2006-06-14 12:00:53 UTC (rev 16219)
+++ branches/tmp/vl-messaging/source/param/loadparm.c 2006-06-14 14:26:18 UTC (rev 16220)
@@ -1621,13 +1621,7 @@
string_set(&Globals.szTemplateShell, "/bin/false");
string_set(&Globals.szTemplateHomedir, "/home/%D/%U");
string_set(&Globals.szWinbindSeparator, "\\");
-#if defined(WITH_TDB_MESSAGING)
Globals.iMsgType = MESSAGING_TYPE_TDB;
-#elif defined(WITH_DGRAM_MESSAGING)
- Globals.iMsgType = MESSAGING_TYPE_DGRAM;
-#elif defined(WITH_STREAM_MESSAGING)
- Globals.iMsgType = MESSAGING_TYPE_STREAM;
-#endif /* WITH_..._MESSAGING */
string_set(&Globals.szCupsServer, "");
string_set(&Globals.szIPrintServer, "");
More information about the samba-cvs
mailing list