Current File : //usr/share/doc/dbus/api/dbus-message-private_8h_source.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>D-Bus: dbus-message-private.h Source File</title>

<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />



</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">D-Bus
   &#160;<span id="projectnumber">1.8.20</span>
   </div>
   
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.7.6.1 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="headertitle">
<div class="title">dbus-message-private.h</div>  </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* -*- mode: C; c-file-style: &quot;gnu&quot;; indent-tabs-mode: nil; -*- */</span>
<a name="l00002"></a>00002 <span class="comment">/* dbus-message-private.h header shared between dbus-message.c and dbus-message-util.c</span>
<a name="l00003"></a>00003 <span class="comment"> *</span>
<a name="l00004"></a>00004 <span class="comment"> * Copyright (C) 2005  Red Hat Inc.</span>
<a name="l00005"></a>00005 <span class="comment"> *</span>
<a name="l00006"></a>00006 <span class="comment"> * Licensed under the Academic Free License version 2.1</span>
<a name="l00007"></a>00007 <span class="comment"> * </span>
<a name="l00008"></a>00008 <span class="comment"> * This program is free software; you can redistribute it and/or modify</span>
<a name="l00009"></a>00009 <span class="comment"> * it under the terms of the GNU General Public License as published by</span>
<a name="l00010"></a>00010 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span>
<a name="l00011"></a>00011 <span class="comment"> * (at your option) any later version.</span>
<a name="l00012"></a>00012 <span class="comment"> *</span>
<a name="l00013"></a>00013 <span class="comment"> * This program is distributed in the hope that it will be useful,</span>
<a name="l00014"></a>00014 <span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span>
<a name="l00015"></a>00015 <span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the</span>
<a name="l00016"></a>00016 <span class="comment"> * GNU General Public License for more details.</span>
<a name="l00017"></a>00017 <span class="comment"> * </span>
<a name="l00018"></a>00018 <span class="comment"> * You should have received a copy of the GNU General Public License</span>
<a name="l00019"></a>00019 <span class="comment"> * along with this program; if not, write to the Free Software</span>
<a name="l00020"></a>00020 <span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA</span>
<a name="l00021"></a>00021 <span class="comment"> *</span>
<a name="l00022"></a>00022 <span class="comment"> */</span>
<a name="l00023"></a>00023 <span class="preprocessor">#ifndef DBUS_MESSAGE_PRIVATE_H</span>
<a name="l00024"></a>00024 <span class="preprocessor"></span><span class="preprocessor">#define DBUS_MESSAGE_PRIVATE_H</span>
<a name="l00025"></a>00025 <span class="preprocessor"></span>
<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;dbus/dbus-message.h&gt;</span>
<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;dbus/dbus-message-internal.h&gt;</span>
<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;dbus/dbus-string.h&gt;</span>
<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;dbus/dbus-dataslot.h&gt;</span>
<a name="l00030"></a>00030 <span class="preprocessor">#include &lt;dbus/dbus-marshal-header.h&gt;</span>
<a name="l00031"></a>00031 
<a name="l00032"></a>00032 <a class="code" href="group__DBusMacros.html#ga875146b01015e9ced22b25d76d549ab2" title="Macro used prior to declaring functions in the D-Bus header files.">DBUS_BEGIN_DECLS</a>
<a name="l00033"></a>00033 
<a name="l00060"></a><a class="code" href="structDBusMessageLoader.html">00060</a> <span class="keyword">struct </span><a class="code" href="structDBusMessageLoader.html" title="Implementation details of DBusMessageLoader.">DBusMessageLoader</a>
<a name="l00061"></a>00061 {
<a name="l00062"></a><a class="code" href="structDBusMessageLoader.html#af3372b7d574dab49a7435d8f29ea2258">00062</a>   <span class="keywordtype">int</span> <a class="code" href="structDBusMessageLoader.html#af3372b7d574dab49a7435d8f29ea2258" title="Reference count.">refcount</a>;        
<a name="l00064"></a><a class="code" href="structDBusMessageLoader.html#a33c22d4f64a32a72faefb1df94fcfed1">00064</a>   <a class="code" href="structDBusString.html">DBusString</a> <a class="code" href="structDBusMessageLoader.html#a33c22d4f64a32a72faefb1df94fcfed1" title="Buffered data.">data</a>;     
<a name="l00066"></a><a class="code" href="structDBusMessageLoader.html#a5ad667f9a5b58d23f2089e7cea58f6cc">00066</a>   <a class="code" href="structDBusList.html" title="A node in a linked list.">DBusList</a> *<a class="code" href="structDBusMessageLoader.html#a5ad667f9a5b58d23f2089e7cea58f6cc" title="Complete messages.">messages</a>;  
<a name="l00068"></a><a class="code" href="structDBusMessageLoader.html#a174d67695b3aca6ee3bb8e1e5e033334">00068</a>   <span class="keywordtype">long</span> <a class="code" href="structDBusMessageLoader.html#a174d67695b3aca6ee3bb8e1e5e033334" title="Maximum size of a message.">max_message_size</a>; 
<a name="l00069"></a><a class="code" href="structDBusMessageLoader.html#a2134a617c0d631d946adee1f08443851">00069</a>   <span class="keywordtype">long</span> <a class="code" href="structDBusMessageLoader.html#a2134a617c0d631d946adee1f08443851" title="Maximum unix fds in a message.">max_message_unix_fds</a>; 
<a name="l00071"></a><a class="code" href="structDBusMessageLoader.html#ac6116f8620094b8ce348b103483c0035">00071</a>   <a class="code" href="group__DBusMarshal.html#ga0c4521d30d6650a33673a4d7f9cc007c" title="This is primarily used in unit testing, so we can verify that each invalid message is invalid for the...">DBusValidity</a> <a class="code" href="structDBusMessageLoader.html#ac6116f8620094b8ce348b103483c0035" title="why we were corrupted">corruption_reason</a>; 
<a name="l00073"></a><a class="code" href="structDBusMessageLoader.html#a7af27694794dc471ed3b251da8d7c62e">00073</a>   <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structDBusMessageLoader.html#a7af27694794dc471ed3b251da8d7c62e" title="We got broken data, and are no longer working.">corrupted</a> : 1; 
<a name="l00075"></a><a class="code" href="structDBusMessageLoader.html#a7fe926ecd87e9ddb37e7481195bc3d67">00075</a>   <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structDBusMessageLoader.html#a7fe926ecd87e9ddb37e7481195bc3d67" title="Someone is using the buffer to read.">buffer_outstanding</a> : 1; 
<a name="l00077"></a>00077 <span class="preprocessor">#ifdef HAVE_UNIX_FD_PASSING</span>
<a name="l00078"></a>00078 <span class="preprocessor"></span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> unix_fds_outstanding : 1; 
<a name="l00080"></a>00080   <span class="keywordtype">int</span> *unix_fds; 
<a name="l00081"></a>00081   <span class="keywordtype">unsigned</span> n_unix_fds_allocated; 
<a name="l00082"></a>00082   <span class="keywordtype">unsigned</span> n_unix_fds; 
<a name="l00083"></a>00083   void (* unix_fds_change) (<span class="keywordtype">void</span> *); 
<a name="l00084"></a>00084   <span class="keywordtype">void</span> *unix_fds_change_data;
<a name="l00085"></a>00085 <span class="preprocessor">#endif</span>
<a name="l00086"></a>00086 <span class="preprocessor"></span>};
<a name="l00087"></a>00087 
<a name="l00088"></a>00088 
<a name="l00090"></a><a class="code" href="group__DBusMessageInternals.html#ga660989658f3be5e403da430f63afd0b7">00090</a> <span class="preprocessor">#define CHANGED_STAMP_BITS 21</span>
<a name="l00091"></a>00091 <span class="preprocessor"></span>
<a name="l00099"></a><a class="code" href="structDBusMessage.html">00099</a> <span class="keyword">struct </span><a class="code" href="structDBusMessage.html" title="Internals of DBusMessage.">DBusMessage</a>
<a name="l00100"></a>00100 {
<a name="l00101"></a><a class="code" href="structDBusMessage.html#a324c5377e0be18dd84ac519ab2d23f0d">00101</a>   <a class="code" href="structDBusAtomic.html" title="An atomic integer safe to increment or decrement from multiple threads.">DBusAtomic</a> <a class="code" href="structDBusMessage.html#a324c5377e0be18dd84ac519ab2d23f0d" title="Reference count.">refcount</a>; 
<a name="l00103"></a><a class="code" href="structDBusMessage.html#a00cf6910d9f3bee5d5a82137c8c64a42">00103</a>   <a class="code" href="structDBusHeader.html" title="Message header data and some cached details of it.">DBusHeader</a> <a class="code" href="structDBusMessage.html#a00cf6910d9f3bee5d5a82137c8c64a42" title="Header network data and associated cache.">header</a>; 
<a name="l00105"></a><a class="code" href="structDBusMessage.html#a0b9d14d6e0529f0ec2e3c0087fe62a9e">00105</a>   <a class="code" href="structDBusString.html">DBusString</a> <a class="code" href="structDBusMessage.html#a0b9d14d6e0529f0ec2e3c0087fe62a9e" title="Body network data.">body</a>;   
<a name="l00107"></a><a class="code" href="structDBusMessage.html#ac926e7027f22608d75a6dfe18680b9e7">00107</a>   <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structDBusMessage.html#ac926e7027f22608d75a6dfe18680b9e7" title="Message being sent, no modifications allowed.">locked</a> : 1; 
<a name="l00109"></a>00109 <span class="preprocessor">#ifndef DBUS_DISABLE_CHECKS</span>
<a name="l00110"></a><a class="code" href="structDBusMessage.html#ac71fa5534264093e6af8bc41f15237c8">00110</a> <span class="preprocessor"></span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structDBusMessage.html#ac71fa5534264093e6af8bc41f15237c8" title="Has been &quot;freed&quot; since it&#39;s in the cache (this is a debug feature)">in_cache</a> : 1; 
<a name="l00111"></a>00111 <span class="preprocessor">#endif</span>
<a name="l00112"></a>00112 <span class="preprocessor"></span>
<a name="l00113"></a><a class="code" href="structDBusMessage.html#ac6fc05ddffb11ac60b9da046abd2dc52">00113</a>   <a class="code" href="structDBusList.html" title="A node in a linked list.">DBusList</a> *<a class="code" href="structDBusMessage.html#ac6fc05ddffb11ac60b9da046abd2dc52" title="0-N DBusCounter used to track message size/unix fds.">counters</a>;   
<a name="l00114"></a><a class="code" href="structDBusMessage.html#ab8f43d40fa870f97f1126256568cec61">00114</a>   <span class="keywordtype">long</span> <a class="code" href="structDBusMessage.html#ab8f43d40fa870f97f1126256568cec61" title="Size we incremented the size counters by.">size_counter_delta</a>;   
<a name="l00116"></a><a class="code" href="structDBusMessage.html#a5d102e908f6ff96a5a0aa6a39b4963a8">00116</a>   <a class="code" href="group__DBusTypes.html#gaf513803b030613a669cc7ef199f90a8b" title="A 32-bit unsigned integer on all platforms.">dbus_uint32_t</a> <a class="code" href="structDBusMessage.html#a5d102e908f6ff96a5a0aa6a39b4963a8" title="Incremented when iterators are invalidated.">changed_stamp</a> : <a class="code" href="group__DBusMessageInternals.html#ga660989658f3be5e403da430f63afd0b7" title="How many bits are in the changed_stamp used to validate iterators.">CHANGED_STAMP_BITS</a>; 
<a name="l00118"></a><a class="code" href="structDBusMessage.html#a179c446523c6321e04f88a671363be19">00118</a>   <a class="code" href="structDBusDataSlotList.html" title="Data structure that stores the actual user data set at a given slot.">DBusDataSlotList</a> <a class="code" href="structDBusMessage.html#a179c446523c6321e04f88a671363be19" title="Data stored by allocated integer ID.">slot_list</a>;   
<a name="l00120"></a>00120 <span class="preprocessor">#ifndef DBUS_DISABLE_CHECKS</span>
<a name="l00121"></a><a class="code" href="structDBusMessage.html#a96263aa8a777c8c661d2596911c7d592">00121</a> <span class="preprocessor"></span>  <span class="keywordtype">int</span> <a class="code" href="structDBusMessage.html#a96263aa8a777c8c661d2596911c7d592" title="_dbus_current_generation when message was created">generation</a>; 
<a name="l00122"></a>00122 <span class="preprocessor">#endif</span>
<a name="l00123"></a>00123 <span class="preprocessor"></span>
<a name="l00124"></a>00124 <span class="preprocessor">#ifdef HAVE_UNIX_FD_PASSING</span>
<a name="l00125"></a>00125 <span class="preprocessor"></span>  <span class="keywordtype">int</span> *unix_fds;
<a name="l00129"></a>00129   <span class="keywordtype">unsigned</span> n_unix_fds; 
<a name="l00130"></a>00130   <span class="keywordtype">unsigned</span> n_unix_fds_allocated; 
<a name="l00132"></a>00132   <span class="keywordtype">long</span> unix_fd_counter_delta; 
<a name="l00133"></a>00133 <span class="preprocessor">#endif</span>
<a name="l00134"></a>00134 <span class="preprocessor"></span>};
<a name="l00135"></a>00135 
<a name="l00136"></a>00136 <a class="code" href="group__DBusTypes.html#ga39c9cb0f3a2a8ad6f55cc4855d035349" title="A boolean, valid values are TRUE and FALSE.">dbus_bool_t</a> <a class="code" href="group__DBusMessageInternals.html#ga1ae02a435d19c3363e11c74b08c43ab2" title="Implementation of the varargs arg-getting functions.">_dbus_message_iter_get_args_valist</a> (<a class="code" href="structDBusMessageIter.html" title="DBusMessageIter struct; contains no public fields.">DBusMessageIter</a> *iter,
<a name="l00137"></a>00137                                                 <a class="code" href="structDBusError.html" title="Object representing an exception.">DBusError</a>       *error,
<a name="l00138"></a>00138                                                 <span class="keywordtype">int</span>              first_arg_type,
<a name="l00139"></a>00139                                                 va_list          var_args);
<a name="l00140"></a>00140 
<a name="l00143"></a>00143 <a class="code" href="group__DBusMacros.html#gae4a9263a43f8220f6e1c0fd07cf6e59a" title="Macro used after declaring functions in the D-Bus header files.">DBUS_END_DECLS</a>
<a name="l00144"></a>00144 
<a name="l00145"></a>00145 <span class="preprocessor">#endif </span><span class="comment">/* DBUS_MESSAGE_H */</span>
</pre></div></div><!-- contents -->


<hr class="footer"/><address class="footer"><small>
Generated on Thu Mar 3 2016 17:50:30 for D-Bus by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.7.6.1
</small></address>

</body>
</html>