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_rules.php
98 98

  
99 99
	if ($_POST['apply']) {
100 100
		$retval = 0;
101
		config_lock();
102 101
		$retval = filter_configure();
103
		config_unlock();
104 102

  
105 103
		if (file_exists($d_filterconfdirty_path))
106 104
			unlink($d_filterconfdirty_path);

Also available in: Unified diff