Project

General

Profile

« Previous | Next » 

Revision 0027de0a

Added by Ermal Luçi about 16 years ago

  • Create two new functions lock($subsystem)/unlock() to have more reliable locking using semaphores.
    This function can sleep till the resource is free and can help find not well behaving code.
  • Remove most of the config_lock/config_unlock logics on the whole scripts/pages it is an abuse of this.
    If any sybsytem wants to lock can do so with its own lock.
  • Lock the config when doing a filter reload to avoid parallell recursion on this function, since it is not reentrant.
    This compenstates for the removal of lock aquiring from the scripts/pages.
  • config_lock/config_unlock are now compate shims that do nothing. They are preserved since packages 'abuse' them too.

View differences:

usr/local/www/firewall_shaper_layer7.php
166 166
		write_config();
167 167

  
168 168
		$retval = 0;
169
		$savemsg = get_std_save_message($retval);
170
			
171
		config_lock();
172 169
		$retval = filter_configure();
173
		config_unlock();
174
			
170
		$savemsg = get_std_save_message($retval);
171

  
175 172
		if(stristr($retval, "error") <> true)
176 173
			$savemsg = get_std_save_message($retval);
177 174
		else

Also available in: Unified diff