1d012387afef0ba02185ebe27bc6bb15551912e92Havoc Pennington/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ 2330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington/* dbus-message-factory.h Generator of valid and invalid message data for test suite 3330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington * 4330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington * Copyright (C) 2005 Red Hat Inc. 5330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington * 6330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington * Licensed under the Academic Free License version 2.1 7330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington * 8330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington * This program is free software; you can redistribute it and/or modify 9330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington * it under the terms of the GNU General Public License as published by 10330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington * the Free Software Foundation; either version 2 of the License, or 11330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington * (at your option) any later version. 12330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington * 13330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington * This program is distributed in the hope that it will be useful, 14330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington * but WITHOUT ANY WARRANTY; without even the implied warranty of 15330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington * GNU General Public License for more details. 17330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington * 18330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington * You should have received a copy of the GNU General Public License 19330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington * along with this program; if not, write to the Free Software 205baf2f856a9c6625993234855b07680da1c8916fTobias Mueller * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 21330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington * 22330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington */ 23330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington 24330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington#ifndef DBUS_MESSAGE_FACTORY_H 25330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington#define DBUS_MESSAGE_FACTORY_H 26330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington 27330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington#ifdef DBUS_BUILD_TESTS 28330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington 29330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington#include <dbus/dbus-string.h> 30330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington#include <dbus/dbus-marshal-basic.h> 31330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington#include <dbus/dbus-marshal-validate.h> 32330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington 33330ae27487375e2feadb77e90930f3b250ed7952Havoc PenningtonDBUS_BEGIN_DECLS 34330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington 35330ae27487375e2feadb77e90930f3b250ed7952Havoc Penningtontypedef struct 36330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington{ 37330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington DBusValidity expected_validity; 38330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington 39330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington DBusString data; 40330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington 41330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington} DBusMessageData; 42330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington 4372c433f80ba964f03688b61ff754b1c93d0fb4adHavoc Pennington#define _DBUS_MESSAGE_DATA_MAX_NESTING 10 44330ae27487375e2feadb77e90930f3b250ed7952Havoc Penningtontypedef struct 45330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington{ 4672c433f80ba964f03688b61ff754b1c93d0fb4adHavoc Pennington int sequence_nos[_DBUS_MESSAGE_DATA_MAX_NESTING]; 4772c433f80ba964f03688b61ff754b1c93d0fb4adHavoc Pennington int depth; 480e53d4eed36f378e99802e516fbb0d1355641902Havoc Pennington int count; 49330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington} DBusMessageDataIter; 50330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington 51330ae27487375e2feadb77e90930f3b250ed7952Havoc Penningtonvoid _dbus_message_data_free (DBusMessageData *data); 52330ae27487375e2feadb77e90930f3b250ed7952Havoc Penningtonvoid _dbus_message_data_iter_init (DBusMessageDataIter *iter); 53330ae27487375e2feadb77e90930f3b250ed7952Havoc Penningtondbus_bool_t _dbus_message_data_iter_get_and_next (DBusMessageDataIter *iter, 54330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington DBusMessageData *data); 55330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington 56330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington 57330ae27487375e2feadb77e90930f3b250ed7952Havoc PenningtonDBUS_END_DECLS 58330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington 59330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington#endif /* DBUS_BUILD_TESTS */ 60330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington 61330ae27487375e2feadb77e90930f3b250ed7952Havoc Pennington#endif /* DBUS_MESSAGE_FACTORY_H */ 62