• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/router/samba-3.0.25b/source/nmbd/

Lines Matching refs:servrec

34 	struct server_record *servrec;
37 for (servrec = work->serverlist; servrec; servrec = nexts) {
38 DEBUG(7,("remove_all_servers: Removing server %s\n",servrec->serv.name));
39 nexts = servrec->next;
41 if (servrec->prev)
42 servrec->prev->next = servrec->next;
43 if (servrec->next)
44 servrec->next->prev = servrec->prev;
46 if (work->serverlist == servrec)
47 work->serverlist = servrec->next;
49 ZERO_STRUCTP(servrec);
50 SAFE_FREE(servrec);
61 struct server_record *servrec)
66 work->serverlist = servrec;
67 servrec->prev = NULL;
68 servrec->next = NULL;
75 servrec2->next = servrec;
76 servrec->next = NULL;
77 servrec->prev = servrec2;
101 void remove_server_from_workgroup(struct work_record *work, struct server_record *servrec)
103 if (servrec->prev)
104 servrec->prev->next = servrec->next;
105 if (servrec->next)
106 servrec->next->prev = servrec->prev;
108 if (work->serverlist == servrec)
109 work->serverlist = servrec->next;
111 ZERO_STRUCTP(servrec);
112 SAFE_FREE(servrec);
124 struct server_record *servrec;
132 if((servrec = find_server_in_workgroup(work, name)) != NULL) {
138 if((servrec = SMB_MALLOC_P(struct server_record)) == NULL) {
143 memset((char *)servrec,'\0',sizeof(*servrec));
145 servrec->subnet = work->subnet;
147 fstrcpy(servrec->serv.name,name);
148 fstrcpy(servrec->serv.comment,comment);
149 strupper_m(servrec->serv.name);
150 servrec->serv.type = servertype;
152 update_server_ttl(servrec, ttl);
154 add_server_to_workgroup(work, servrec);
161 return(servrec);
168 void update_server_ttl(struct server_record *servrec, int ttl)
173 if(is_myname(servrec->serv.name))
174 servrec->death_time = PERMANENT_TTL;
176 servrec->death_time = (ttl != PERMANENT_TTL) ? time(NULL)+(ttl*3) : PERMANENT_TTL;
178 servrec->subnet->work_changed = True;
189 struct server_record *servrec;
192 for (servrec = work->serverlist; servrec; servrec = nexts) {
193 nexts = servrec->next;
195 if ((servrec->death_time != PERMANENT_TTL) && ((t == -1) || (servrec->death_time < t))) {
196 DEBUG(3,("expire_old_servers: Removing timed out server %s\n",servrec->serv.name));
197 remove_server_from_workgroup(work, servrec);
211 struct server_record *servrec)
219 if(find_server_in_workgroup( iwork, servrec->serv.name) != NULL) {
236 return servrec->serv.type;
296 struct server_record *servrec;
372 if((servrec = find_server_in_workgroup( work, my_netbios_names(i))) == NULL)
375 stype |= servrec->serv.type;
398 for (servrec = work->serverlist; servrec ; servrec = servrec->next) {
402 if(is_myname(servrec->serv.name))
405 serv_type = write_this_server_name(subrec, work, servrec);
408 write_browse_list_entry(fp, servrec->serv.name, serv_type,
409 servrec->serv.comment, work->work_group);