Home | History | Annotate | Download | only in dbus
      1 /* -*- mode: C; c-file-style: "gnu" -*- */
      2 /* dbus-message-internal.h DBusMessage object internal interfaces
      3  *
      4  * Copyright (C) 2002  Red Hat Inc.
      5  *
      6  * Licensed under the Academic Free License version 2.1
      7  *
      8  * This program is free software; you can redistribute it and/or modify
      9  * it under the terms of the GNU General Public License as published by
     10  * the Free Software Foundation; either version 2 of the License, or
     11  * (at your option) any later version.
     12  *
     13  * This program is distributed in the hope that it will be useful,
     14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
     15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     16  * GNU General Public License for more details.
     17  *
     18  * You should have received a copy of the GNU General Public License
     19  * along with this program; if not, write to the Free Software
     20  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
     21  *
     22  */
     23 #ifndef DBUS_MESSAGE_INTERNAL_H
     24 #define DBUS_MESSAGE_INTERNAL_H
     25 
     26 #include <dbus/dbus-message.h>
     27 #include <dbus/dbus-resources.h>
     28 #include <dbus/dbus-list.h>
     29 
     30 DBUS_BEGIN_DECLS
     31 
     32 typedef struct DBusMessageLoader DBusMessageLoader;
     33 
     34 void _dbus_message_get_network_data  (DBusMessage       *message,
     35 				      const DBusString **header,
     36 				      const DBusString **body);
     37 
     38 void        _dbus_message_lock                  (DBusMessage  *message);
     39 void        _dbus_message_unlock                (DBusMessage  *message);
     40 void        _dbus_message_set_serial            (DBusMessage  *message,
     41                                                  dbus_uint32_t serial);
     42 dbus_bool_t _dbus_message_add_size_counter      (DBusMessage  *message,
     43                                                  DBusCounter  *counter);
     44 void        _dbus_message_add_size_counter_link (DBusMessage  *message,
     45                                                  DBusList     *link);
     46 void        _dbus_message_remove_size_counter   (DBusMessage  *message,
     47                                                  DBusCounter  *counter,
     48                                                  DBusList    **link_return);
     49 
     50 DBusMessageLoader* _dbus_message_loader_new                   (void);
     51 DBusMessageLoader* _dbus_message_loader_ref                   (DBusMessageLoader  *loader);
     52 void               _dbus_message_loader_unref                 (DBusMessageLoader  *loader);
     53 
     54 void               _dbus_message_loader_get_buffer            (DBusMessageLoader  *loader,
     55                                                                DBusString        **buffer);
     56 void               _dbus_message_loader_return_buffer         (DBusMessageLoader  *loader,
     57                                                                DBusString         *buffer,
     58                                                                int                 bytes_read);
     59 dbus_bool_t        _dbus_message_loader_queue_messages        (DBusMessageLoader  *loader);
     60 DBusMessage*       _dbus_message_loader_peek_message          (DBusMessageLoader  *loader);
     61 DBusMessage*       _dbus_message_loader_pop_message           (DBusMessageLoader  *loader);
     62 DBusList*          _dbus_message_loader_pop_message_link      (DBusMessageLoader  *loader);
     63 void               _dbus_message_loader_putback_message_link  (DBusMessageLoader  *loader,
     64                                                                DBusList           *link);
     65 
     66 dbus_bool_t        _dbus_message_loader_get_is_corrupted      (DBusMessageLoader  *loader);
     67 
     68 void               _dbus_message_loader_set_max_message_size  (DBusMessageLoader  *loader,
     69                                                                long                size);
     70 long               _dbus_message_loader_get_max_message_size  (DBusMessageLoader  *loader);
     71 
     72 DBUS_END_DECLS
     73 
     74 #endif /* DBUS_MESSAGE_INTERNAL_H */
     75