in reply to calling function with function
Are you sure you are asking for the correct thing? Your code already uses 'functions within functions': logMessage is called from within both Active_err and set_all_faults. Just put the bit of code you want in a separate sub and call it just like the logMessage calls.</naivety>
Update: corrected spelling of that difficult word. Sarcasm is much better without spelling errors.