/[monit]/monit/gc.c
ViewVC logotype

Diff of /monit/gc.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.56 by martinp, Tue Sep 28 14:24:01 2004 UTC revision 1.57 by hauk, Mon Dec 20 05:39:34 2004 UTC
# Line 57  static void _gcgid(Gid_T *); Line 57  static void _gcgid(Gid_T *);
57  static void _gcgrc(Generic_T *);  static void _gcgrc(Generic_T *);
58  static void _gcath(Auth_T *);  static void _gcath(Auth_T *);
59  static void _gc_collector(Collector_T *);  static void _gc_collector(Collector_T *);
60    static void _gc_url(URL_T *);
61    static void _gc_request(Request_T *);
62    
63    
64  /**  /**
# Line 128  void gc_mail_list(Mail_T *m) { Line 130  void gc_mail_list(Mail_T *m) {
130  }  }
131    
132    
 void gc_url(Url_T *url) {  
   
   ASSERT(url);  
   
   FREE((*url)->url);  
   /* Protocol is automatic memory thus it is not needed to free it */  
   FREE((*url)->user);  
   FREE((*url)->password);  
   FREE((*url)->hostname);  
   FREE((*url)->path);  
   FREE((*url)->query);  
   FREE(*url);  
   
 }  
   
   
133  /* ----------------------------------------------------------------- Private */  /* ----------------------------------------------------------------- Private */
134    
135    
# Line 238  static void _gc_service(Service_T *s) { Line 224  static void _gc_service(Service_T *s) {
224    
225  }  }
226        
227    static void _gc_request(Request_T *r) {
228      
229      int i= 0;
230      ASSERT(r);
231    
232      if((*r)->url)
233        _gc_url(&(*r)->url);
234      for(i= 0; (*r)->headers[i]; i++)
235        FREE((*r)->headers[i]);
236    #ifdef HAVE_REGEX_H
237      if ((*r)->regex)
238        regfree((*r)->regex);
239    #endif
240      FREE((*r)->regex);
241      FREE(*r);
242    
243    }
244    
245    
246    static void _gc_url(URL_T *url) {
247    
248      ASSERT(url);
249    
250      FREE((*url)->url);
251      FREE((*url)->protocol);
252      FREE((*url)->user);
253      FREE((*url)->password);
254      FREE((*url)->hostname);
255      FREE((*url)->path);
256      FREE((*url)->query);
257      FREE(*url);
258    
259    }
260    
261    
262  static void _gc_mail_server(MailServer_T *s) {  static void _gc_mail_server(MailServer_T *s) {
263    
# Line 311  static void _gcppl(Port_T *p) { Line 331  static void _gcppl(Port_T *p) {
331    
332    if((*p)->action)    if((*p)->action)
333      _gc_eventaction(&(*p)->action);      _gc_eventaction(&(*p)->action);
   
334    if((*p)->generic)    if((*p)->generic)
335      _gcgrc(&(*p)->generic);      _gcgrc(&(*p)->generic);
336      if((*p)->url_request)
337        _gc_request(&(*p)->url_request);
338    
339    FREE((*p)->address);    FREE((*p)->address);
340    FREE((*p)->request);    FREE((*p)->request);
# Line 322  static void _gcppl(Port_T *p) { Line 343  static void _gcppl(Port_T *p) {
343    FREE((*p)->SSL.certmd5);    FREE((*p)->SSL.certmd5);
344    FREE((*p)->request_checksum);    FREE((*p)->request_checksum);
345    FREE(*p);    FREE(*p);
   
346  }  }
347    
348    
# Line 514  static void _gc_collector(Collector_T *r Line 534  static void _gc_collector(Collector_T *r
534    if((*recv)->next)    if((*recv)->next)
535      _gc_collector(&(*recv)->next);      _gc_collector(&(*recv)->next);
536    
537    gc_url(&(*recv)->url);    _gc_url(&(*recv)->url);
538    
539    FREE((*recv)->ssl.certmd5);    FREE((*recv)->ssl.certmd5);
540    FREE(*recv);    FREE(*recv);

Legend:
Removed from v.1.56  
changed lines
  Added in v.1.57

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26