summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>1998-02-24 17:59:34 +0000
committerJeremy Allison <jra@samba.org>1998-02-24 17:59:34 +0000
commit834ef5624421dfdb4665012ea43aa37d092efe40 (patch)
tree0ef94ac1c248e8c27acb89829c1e4cbb583c47e1
parentc16d4aec00230983973be3b827d1209f5db65d9c (diff)
downloadsamba-834ef5624421dfdb4665012ea43aa37d092efe40.tar.gz
samba-834ef5624421dfdb4665012ea43aa37d092efe40.tar.bz2
samba-834ef5624421dfdb4665012ea43aa37d092efe40.zip
nmbd_incomingdgrams.c: Fix for typo.
nmbd_sendannounce.c: Remote announcement was announcing to the wrong name ! nmblookup.c: Fix for substitutions not seeing hostname. testparm.c: Fix for substitutions not seeing hostname. wsmbstatus.c: Fix for substitutions not seeing hostname. util.c: Change read_udp_socket to use sockaddr_in rather than dubiously messing around with an opaque data type (sockaddr). Jeremy. (This used to be commit 776ccf5c0641b5aa300236c2612b5f2761d1179f)
-rw-r--r--source3/lib/util.c8
-rw-r--r--source3/nmbd/nmbd_incomingdgrams.c4
-rw-r--r--source3/nmbd/nmbd_sendannounce.c2
-rw-r--r--source3/utils/nmblookup.c3
-rw-r--r--source3/utils/testparm.c7
-rw-r--r--source3/wsmbstatus.c6
6 files changed, 22 insertions, 8 deletions
diff --git a/source3/lib/util.c b/source3/lib/util.c
index 365a765174..18614caeed 100644
--- a/source3/lib/util.c
+++ b/source3/lib/util.c
@@ -2002,20 +2002,20 @@ read from a socket
int read_udp_socket(int fd,char *buf,int len)
{
int ret;
- struct sockaddr sock;
+ struct sockaddr_in sock;
int socklen;
socklen = sizeof(sock);
bzero((char *)&sock,socklen);
bzero((char *)&lastip,sizeof(lastip));
- ret = recvfrom(fd,buf,len,0,&sock,&socklen);
+ ret = recvfrom(fd,buf,len,0,(struct sockaddr *)&sock,&socklen);
if (ret <= 0) {
DEBUG(2,("read socket failed. ERRNO=%s\n",strerror(errno)));
return(0);
}
- lastip = *(struct in_addr *) &sock.sa_data[2];
- lastport = ntohs(((struct sockaddr_in *)&sock)->sin_port);
+ lastip = sock.sin_addr;
+ lastport = ntohs(sock.sin_port);
DEBUG(10,("read_udp_socket: lastip %s lastport %d read: %d\n",
inet_ntoa(lastip), lastport, ret));
diff --git a/source3/nmbd/nmbd_incomingdgrams.c b/source3/nmbd/nmbd_incomingdgrams.c
index 46d988e89a..80057ef12c 100644
--- a/source3/nmbd/nmbd_incomingdgrams.c
+++ b/source3/nmbd/nmbd_incomingdgrams.c
@@ -449,8 +449,8 @@ void process_lm_host_announce(struct subnet_record *subrec, struct packet_struct
if ((osmajor < 36) || (osmajor > 38) || (osminor !=0))
{
- DEBUG(5,("process_lm_host_announce: LM Announcement packet does not " \
- "originate from OS/2 Warp client. Ignoring packet.\n"));
+ DEBUG(5,("process_lm_host_announce: LM Announcement packet does not \
+originate from OS/2 Warp client. Ignoring packet.\n"));
/* Could have been from a Windows machine (with its LM Announce enabled),
or a Samba server. Then don't disrupt the current browse list. */
return;
diff --git a/source3/nmbd/nmbd_sendannounce.c b/source3/nmbd/nmbd_sendannounce.c
index 62e5f02d8c..e39e251496 100644
--- a/source3/nmbd/nmbd_sendannounce.c
+++ b/source3/nmbd/nmbd_sendannounce.c
@@ -529,7 +529,7 @@ void announce_remote(time_t t)
send_announcement(FIRST_SUBNET, ANN_HostAnnouncement,
name, /* From nbt name. */
- wgroup, 0x1e, /* To nbt name. */
+ wgroup, 0x1d, /* To nbt name. */
addr, /* To ip. */
REMOTE_ANNOUNCE_INTERVAL, /* Time until next announce. */
name, /* Name to announce. */
diff --git a/source3/utils/nmblookup.c b/source3/utils/nmblookup.c
index 5cd5a869a9..a73a35cd56 100644
--- a/source3/utils/nmblookup.c
+++ b/source3/utils/nmblookup.c
@@ -170,12 +170,13 @@ int main(int argc,char *argv[])
exit(1);
}
+ init_structs();
+
if (!lp_load(servicesf,True)) {
fprintf(stderr, "Can't load %s - run testparm to debug it\n", servicesf);
}
load_interfaces();
- init_structs();
if (!open_sockets()) return(1);
if (!got_bcast)
diff --git a/source3/utils/testparm.c b/source3/utils/testparm.c
index cc35d2d530..a35a3fd71e 100644
--- a/source3/utils/testparm.c
+++ b/source3/utils/testparm.c
@@ -38,6 +38,7 @@
/* these live in util.c */
extern FILE *dbf;
extern int DEBUGLEVEL;
+extern pstring myhostname;
int main(int argc, char *argv[])
{
@@ -60,6 +61,12 @@ extern int DEBUGLEVEL;
printf("Load smb config files from %s\n",configfile);
+ if(!get_myname(myhostname,NULL))
+ {
+ printf("Failed to get my hostname.\n");
+ return(1);
+ }
+
if (!lp_load(configfile,False))
{
printf("Error loading services.\n");
diff --git a/source3/wsmbstatus.c b/source3/wsmbstatus.c
index fd57662062..60c35357b2 100644
--- a/source3/wsmbstatus.c
+++ b/source3/wsmbstatus.c
@@ -43,6 +43,12 @@ static void show_connections(void)
FILE *f;
struct connect_record crec;
+ if(!get_myname(myhostname,NULL))
+ {
+ printf("Failed to get my hostname.\n");
+ return;
+ }
+
if (!lp_load(servicesf,False)) {
printf("Can't load %s - run testparm to debug it\n", servicesf);
return;