After looking through para.h file from the fluent installation directory, I realized the correct variable that shows the host id is "node_host" not "host" (a mistake in udf manual). so the correct form is :
PRF_CRECV_REAL(node_host, &a, 4, node_host) ;
Which is then compiled with no errors.
However, using these "low level message passing macros" did not solve my problem mentioned in the beginning of this thread. Solver is still stuck at executing them:(