1 /* -*- Mode: C -*- */ 2 /*====================================================================== 3 FILE: icalattachimpl.h 4 CREATOR: acampi 28 May 02 5 6 $Id: icalattachimpl.h,v 1.3 2008-01-15 23:17:40 dothebart Exp $ 7 8 9 (C) COPYRIGHT 2000, Andrea Campi <a.campi@inet.it> 10 11 This program is free software; you can redistribute it and/or modify 12 it under the terms of either: 13 14 The LGPL as published by the Free Software Foundation, version 15 2.1, available at: http://www.fsf.org/copyleft/lesser.html 16 17 Or: 18 19 The Mozilla Public License Version 1.0. You may obtain a copy of 20 the License at http://www.mozilla.org/MPL/ 21 22 The original code is icalattachimpl.h 23 24 25 ======================================================================*/ 26 27 #ifdef HAVE_CONFIG_H 28 #include <config.h> 29 #endif 30 31 #ifndef ICALATTACHIMPL_H 32 #define ICALATTACHIMPL_H 33 34 #include "icalattach.h" 35 36 /* Private structure for ATTACH values */ 37 struct icalattach_impl { 38 /* Reference count */ 39 int refcount; 40 41 union { 42 /* URL attachment data */ 43 struct { 44 char *url; 45 } url; 46 47 /* Inline data */ 48 struct { 49 char *data; 50 icalattach_free_fn_t free_fn; 51 void *free_fn_data; 52 } data; 53 } u; 54 55 /* TRUE if URL, FALSE if inline data */ 56 unsigned int is_url : 1; 57 }; 58 59 #endif 60