17 #define _RPMDS_INTERNAL
38 Data_Get_Struct(s,
void, ptr);
45 HE_t he = memset(
alloca(
sizeof(*he)), 0,
sizeof(*he));
50 fprintf(stderr,
"==> %s(%p,%s)\n", __FUNCTION__, h, name);
55 fprintf(stderr,
"\t%s(%u) %u %p[%u]\n", name, (
unsigned)he->
tag, (
unsigned)he->
t, he->
p.
ptr, (
unsigned)he->
c);
63 for (i = 0; i < (int)he->
c; i++)
64 rb_ary_push(v, INT2FIX(he->
p.
ui8p[i]));
68 for (i = 0; i < (int)he->
c; i++)
69 rb_ary_push(v, INT2FIX(he->
p.
ui16p[i]));
73 for (i = 0; i < (int)he->
c; i++)
74 rb_ary_push(v, INT2FIX(he->
p.
ui32p[i]));
78 for (i = 0; i < (int)he->
c; i++)
79 rb_ary_push(v, INT2FIX(he->
p.
ui64p[i]));
83 for (i = 0; i < (int)he->
c; i++)
84 rb_ary_push(v, rb_str_new2(he->
p.
argv[i]));
88 v = rb_str_new2(he->
p.
str);
102 const char *qfmt = StringValueCStr(v);
104 const char *errstr = NULL;
107 fprintf(stderr,
"==> %s(0x%lx, 0x%lx) h %p\n", __FUNCTION__, s, v, h);
112 return rb_str_new2(q);
121 fprintf(stderr,
"==> %s(0x%lx) h %p\n", __FUNCTION__, s, h);
132 fprintf(stderr,
"==> %s(0x%lx, 0x%lx) h %p\n", __FUNCTION__, s, v, h);
146 rb_scan_args(argc, argv,
"01", &v_tag);
149 tag = FIX2INT(v_tag);
152 fprintf(stderr,
"==> %s(0x%lx) h %p\n", __FUNCTION__, s, h);
165 rb_scan_args(argc, argv,
"01", &v_tag);
168 tag = FIX2INT(v_tag);
171 fprintf(stderr,
"==> %s(0x%lx) h %p\n", __FUNCTION__, s, h);
182 rb_define_method(klass,
"ds",
rpmhdr_ds, -1);
183 rb_define_method(klass,
"fi",
rpmhdr_fi, -1);
191 fprintf(stderr,
"==> %s(0x%lx)\n", __FUNCTION__, s);
199 fprintf(stderr,
"==> %s(0x%lx, 0x%lx)\n", __FUNCTION__, s, v);
200 return INT2FIX(
_debug = FIX2INT(v));
207 char * vstr = StringValueCStr(v);
210 fprintf(stderr,
"==> %s(0x%lx) %s\n", __FUNCTION__, s, vstr);
228 fprintf(stderr,
"==> %s(%p)\n", __FUNCTION__, h);
238 rb_scan_args(argc, argv,
"00");
243 fprintf(stderr,
"==> %s(%p[%d], 0x%lx) mi %p\n", __FUNCTION__, argv, argc, s, h);
253 fprintf(stderr,
"==> %s() rpmhdrClass 0x%lx\n", __FUNCTION__,
rpmhdrClass);