diff options
author | Ted Lemon <source@isc.org> | 2000-04-13 21:48:34 +0000 |
---|---|---|
committer | Ted Lemon <source@isc.org> | 2000-04-13 21:48:34 +0000 |
commit | 9615e0e6b39870499f4c828aad115190daaa92c5 (patch) | |
tree | e91bb23d5c039cae0e79e147bfeac7168147537a /common/execute.c | |
parent | f20a57ed9b09e0cfd5f1be76e0a6432bca980588 (diff) | |
download | isc-dhcp-9615e0e6b39870499f4c828aad115190daaa92c5.tar.gz |
Add debugging. Fix break statement.
Diffstat (limited to 'common/execute.c')
-rw-r--r-- | common/execute.c | 31 |
1 files changed, 28 insertions, 3 deletions
diff --git a/common/execute.c b/common/execute.c index efc789a4..87494ab9 100644 --- a/common/execute.c +++ b/common/execute.c @@ -43,7 +43,7 @@ #ifndef lint static char copyright[] = -"$Id: execute.c,v 1.30 2000/03/17 03:59:01 mellon Exp $ Copyright (c) 1998-2000 The Internet Software Consortium. All rights reserved.\n"; +"$Id: execute.c,v 1.31 2000/04/13 21:48:34 mellon Exp $ Copyright (c) 1998-2000 The Internet Software Consortium. All rights reserved.\n"; #endif /* not lint */ #include "dhcpd.h" @@ -89,6 +89,9 @@ int execute_statements (packet, lease, in_options, out_options, scope, case on_statement: if (lease) { if (r -> data.on.evtypes & ON_EXPIRY) { +#if defined (DEBUG_EXPRESSIONS) + log_debug ("exec: on expiry"); +#endif if (lease -> on_expiry) executable_statement_dereference (&lease -> on_expiry, MDL); @@ -98,6 +101,9 @@ int execute_statements (packet, lease, in_options, out_options, scope, r -> data.on.statements, MDL); } if (r -> data.on.evtypes & ON_RELEASE) { +#if defined (DEBUG_EXPRESSIONS) + log_debug ("exec: on release"); +#endif if (lease -> on_release) executable_statement_dereference (&lease -> on_release, MDL); @@ -107,6 +113,9 @@ int execute_statements (packet, lease, in_options, out_options, scope, r -> data.on.statements, MDL); } if (r -> data.on.evtypes & ON_COMMIT) { +#if defined (DEBUG_EXPRESSIONS) + log_debug ("exec: on commit"); +#endif if (lease -> on_commit) executable_statement_dereference (&lease -> on_commit, MDL); @@ -119,14 +128,21 @@ int execute_statements (packet, lease, in_options, out_options, scope, break; case switch_statement: +#if defined (DEBUG_EXPRESSIONS) + log_debug ("exec: switch"); +#endif e = find_matching_case (packet, lease, in_options, out_options, scope, r -> data.s_switch.expr, r -> data.s_switch.statements); +#if defined (DEBUG_EXPRESSIONS) + log_debug ("exec: switch: case %lx", (unsigned long)e); +#endif if (e && !execute_statements (packet, lease, in_options, out_options, scope, e)) return 0; + break; /* These have no effect when executed. */ case case_statement: @@ -159,7 +175,7 @@ int execute_statements (packet, lease, in_options, out_options, scope, out_options, scope, r -> data.eval); #if defined (DEBUG_EXPRESSIONS) log_debug ("exec: evaluate: %s", - (status "succeeded" : "failed")); + (status ? "succeeded" : "failed")); #endif break; @@ -176,7 +192,7 @@ int execute_statements (packet, lease, in_options, out_options, scope, #if defined (DEBUG_EXPRESSIONS) log_debug ("exec: break"); #endif - return 0; + return 1; case supersede_option_statement: #if defined (DEBUG_EXPRESSIONS) @@ -216,6 +232,9 @@ int execute_statements (packet, lease, in_options, out_options, scope, case set_statement: binding = find_binding (scope, r -> data.set.name); +#if defined (DEBUG_EXPRESSIONS) + log_debug ("exec: set %s", r -> data.set.name); +#endif if (!binding && status) { binding = dmalloc (sizeof *binding, MDL); if (binding) { @@ -259,6 +278,9 @@ int execute_statements (packet, lease, in_options, out_options, scope, case unset_statement: binding = find_binding (scope, r -> data.unset); +#if defined (DEBUG_EXPRESSIONS) + log_debug ("exec: unset %s", r -> data.unset); +#endif if (binding) { if (binding -> value) binding_value_dereference @@ -273,6 +295,9 @@ int execute_statements (packet, lease, in_options, out_options, scope, break; case let_statement: +#if defined (DEBUG_EXPRESSIONS) + log_debug ("exec: let %s", r -> data.let.name); +#endif ns = (struct binding_scope *)0; binding_scope_allocate (&ns, MDL); e = r; |