Provided by: erlang-manpages_16.b.3-dfsg-1ubuntu2.2_all bug

NAME

       erl_global - Access globally registered names

DESCRIPTION

       This  module  provides  support for registering, looking up and unregistering names in the
       Erlang Global module. For more information, see the description of Global in the reference
       manual.

       Note that the functions below perform an RPC using an open file descriptor provided by the
       caller. This file descriptor must  not  be  used  for  other  traffic  during  the  global
       operation or the function may receive unexpected data and fail.

EXPORTS

       char **erl_global_names(fd,count)

              Types:

                 int fd;
                 int *count;

              Retrieve a list of all known global names.

              fd is an open descriptor to an Erlang connection.

              count  is  the address of an integer, or NULL. If count is not NULL, it will be set
              by the function to the number of names found.

              On success, the function returns an array of  strings,  each  containing  a  single
              registered  name,  and  sets  count  to  the  number  of  names found. The array is
              terminated by a single NULL pointer. On failure,  the  function  returns  NULL  and
              count is not modified.

          Note:
              It  is  the  caller's  responsibility  to  free  the  array afterwards. It has been
              allocated by the function with a single call to malloc(), so a single free() is all
              that is necessary.

       int erl_global_register(fd,name,pid)

              Types:

                 int fd;
                 const char *name;
                 ETERM *pid;

              This function registers a name in Global.

              fd is an open descriptor to an Erlang connection.

              name is the name to register in Global.

              pid  is  the pid that should be associated with name. This is the value that Global
              will return when processes request the location of name.

              The function returns 0 on success, or -1 on failure.

       int erl_global_unregister(fd,name)

              Types:

                 int fd;
                 const char *name;

              This function unregisters a name from Global.

              fd is an open descriptor to an Erlang connection.

              name is the name to unregister from Global.

              The function returns 0 on success, or -1 on failure.

       ETERM *erl_global_whereis(fd,name,node)

              Types:

                 int fd;
                 const char *name;
                 char *node;

              fd is an open descriptor to an Erlang connection.

              name is the name that is to be looked up in Global.

              If node is not NULL, it is a pointer to a buffer where the function can fill in the
              name  of the node where name is found. node can be passed directly to erl_connect()
              if necessary.

              On success, the function returns an Erlang Pid containing the address of the  given
              name,  and node will be initialized to the nodename where name is found. On failure
              NULL will be returned and node will not be modified.