summaryrefslogtreecommitdiff
path: root/source/lib/wins_srv.c
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2002-06-26 07:27:00 +0000
committerAndrew Tridgell <tridge@samba.org>2002-06-26 07:27:00 +0000
commitd03efabc4dca842cafcd0edfa1eaa5b4d3e821b6 (patch)
treea5a1e3ebf0a3e2406064d3e479a85fc213251e43 /source/lib/wins_srv.c
parent68be27cfea938d7f91a8ce1da39eb86c577f7719 (diff)
downloadsamba-d03efabc4dca842cafcd0edfa1eaa5b4d3e821b6.tar.gz
made the wins list handling a littler clearer
Diffstat (limited to 'source/lib/wins_srv.c')
-rw-r--r--source/lib/wins_srv.c14
1 files changed, 5 insertions, 9 deletions
diff --git a/source/lib/wins_srv.c b/source/lib/wins_srv.c
index cad0d06e490..c31e7505f0b 100644
--- a/source/lib/wins_srv.c
+++ b/source/lib/wins_srv.c
@@ -85,10 +85,7 @@ unsigned long wins_srv_count(void)
int count = 0;
list = lp_wins_server_list();
- while (list && *list) {
- count++;
- list++;
- }
+ for (count=0; list && list[count]; count++) /* nop */ ;
DEBUG(6,("Found %u wins servers in list\n", count));
return count;
@@ -101,25 +98,24 @@ struct in_addr wins_srv_ip(void)
{
char **list;
struct in_addr ip;
+ int i;
list = lp_wins_server_list();
- if (!list || !*list) {
+ if (!list || !list[0]) {
zero_ip(&ip);
return ip;
}
/* find the first live one */
- while (list && *list) {
- ip = *interpret_addr2(*list);
+ for (i=0; list[i]; i++) {
+ ip = *interpret_addr2(list[i]);
if (!wins_is_dead(ip)) {
DEBUG(6,("Current wins server is %s\n", inet_ntoa(ip)));
return ip;
}
- list++;
}
/* damn, they are all dead. Keep trying the primary until they revive */
- list = lp_wins_server_list();
ip = *interpret_addr2(list[0]);
return ip;