IPC::Msg - SysV Msg IPC object class

- NAME
- SYNOPSIS
- DESCRIPTION
- METHODS
- SEE ALSO
- AUTHOR
- COPYRIGHT

# NAME

IPC::Msg - SysV Msg IPC object class

# SYNOPSIS

        use IPC::SysV qw(IPC_PRIVATE S_IRWXU);
        use IPC::Msg;

        $msg = new IPC::Msg(IPC_PRIVATE, S_IRWXU);

        $msg->snd(pack("l! a*",$msgtype,$msg));

        $msg->rcv($buf,256);

        $ds = $msg->stat;

        $msg->remove;

# DESCRIPTION

A class providing an object based interface to SysV IPC message queues.

# METHODS

new ( KEY , FLAGS )

  Creates a new message queue associated with `KEY`. A new queue is created if

- `KEY` is equal to `IPC_PRIVATE`

- `KEY` does not already have a message queue associated with it, and `FLAGS & IPC_CREAT` is true.

On creation of a new message queue `FLAGS` is used to set the permissions.

id

  Returns the system message queue identifier.

rcv ( BUF, LEN [, TYPE [, FLAGS ]] )

  Read a message from the queue. Returns the type of the message read. See the msgrcv manpage. The BUF becomes tainted.

remove

  Remove and destroy the message queue from the system.

set ( STAT )
set ( NAME => VALUE [, NAME => VALUE ...] )

  `set` will set the following values of the `stat` structure associated with the message queue.

          uid
          gid
          mode (oly the permission bits)
          qbytes

  `set` accepts either a stat object, as returned by the `stat` method, or a list of name-value pairs.

snd ( TYPE, MSG [, FLAGS ] )

  Place a message on the queue with the data from `MSG` and with type `TYPE`. See the msgsnd manpage.

stat

  Returns an object of type `IPC::Msg::stat` which is a sub-class of `Class::Struct`. It provides the following fields. For a description of these fields see you system documentation.

          uid
          gid
          cuid
          cgid
          mode
          qnum
          qbytes
          lspid
          lrpid
          stime
          rtime
          ctime

# SEE ALSO

the IPC::SysV manpage the Class::Struct manpage

# AUTHOR

Graham Barr <gbarr@pobox.com>

# COPYRIGHT

Copyright (c) 1997 Graham Barr. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

IPC::Msg - SysV Msg IPC object class