From 3e49abe0db3cff4bbe7aa11840ee0b0b218d7210 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jan=20Posp=C3=AD=C5=A1il?= Date: Wed, 17 Oct 2007 09:30:18 +0000 Subject: [PATCH] merged from branch_RC31_3 --- org.glite.lb.common/Makefile | 2 +- org.glite.lb.common/interface/padstruct.h | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 org.glite.lb.common/interface/padstruct.h diff --git a/org.glite.lb.common/Makefile b/org.glite.lb.common/Makefile index 5e4aecb..82f94a3 100644 --- a/org.glite.lb.common/Makefile +++ b/org.glite.lb.common/Makefile @@ -92,7 +92,7 @@ THRLOBJS:=${OBJS:.o=.thr.lo} HDRS:=context.h context-int.h lb_plain_io.h mini_http.h authz.h xml_parse.h \ xml_conversions.h log_proto.h events_parse.h il_string.h il_msg.h \ - ulm_parse.h lb_maildir.h connpool.h notifid.h notif_rec.h \ + ulm_parse.h lb_maildir.h connpool.h notifid.h notif_rec.h padstruct.h \ query_rec.h timeouts.h LoggingExceptions.h CountRef.h ${PERF_HDRS} GEN_HDRS:=Event.h events.h jobstat.h common_version.h diff --git a/org.glite.lb.common/interface/padstruct.h b/org.glite.lb.common/interface/padstruct.h new file mode 100644 index 0000000..ffc83a7 --- /dev/null +++ b/org.glite.lb.common/interface/padstruct.h @@ -0,0 +1,16 @@ +#ifndef GLITE_LB_PADSTRUCT_H +#define GLITE_LB_PADSTRUCT_H + +#define glite_lb_padded_struct(_padded_name,_padded_size,_padded_content) \ + struct _padded_name##_to_pad__dont_use { _padded_content }; \ + struct _padded_name { \ + _padded_content \ + char _padding[_padded_size*sizeof(void *) - sizeof(struct _padded_name##_to_pad__dont_use)]; \ + }; + +#define glite_lb_padded_union(_padded_name,_padded_size,_padded_content) \ + union _padded_name##_to_pad__dont_use { _padded_content } ; \ + struct _padded_name##_to_check_pad__dont_use { char pad[_padded_size*sizeof(void *) - sizeof(union _padded_name##_to_pad__dont_use)]; }; \ + union _padded_name { _padded_content char _pad[_padded_size*sizeof(void *)]; }; + +#endif /* GLITE_LB_PADSTRUCT_H */ -- 1.8.2.3