Two fairly minor notes:
Backticks are a bad way to work with subshells. The recommended way to run a command in a subshell for substitution purposes is $(...), because then it's unambiguous where the subshell's input ends. Makes it easier to nest this chunk of code in a larger script.
You don't actually need the braces and semicolons in the then and else clauses.
Here are the lines with those two changes applied:
[Expert@TestFW]# M=$(cpprod_util FwIsUsermode);[ $M == 1 ] && M="User Mode" || M="Kernel Mode";echo "Firewall is: $M"
Firewall is: User Mode
[Expert@TestFW]# M=$(cpprod_util SxlIsUsermode);[ $M == 1 ] && M="User Mode" || M="Kernel Mode";echo "SecureXL is: $M"
SecureXL is: Kernel Mode