X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Flibsystemd%2Fsd-bus%2Ftest-bus-error.c;h=ae894e39fd19d134339dbbf6b3045fba0c85b697;hb=8aee3fc7eae2e60592bac838bc7268720e1d489c;hp=dd0cca4ab8fbdfd49b666ca4780f33f0170a3944;hpb=4a0a74179fcfb85c456794fd91fa2ae5d4d3bc8f;p=elogind.git diff --git a/src/libsystemd/sd-bus/test-bus-error.c b/src/libsystemd/sd-bus/test-bus-error.c index dd0cca4ab..ae894e39f 100644 --- a/src/libsystemd/sd-bus/test-bus-error.c +++ b/src/libsystemd/sd-bus/test-bus-error.c @@ -111,6 +111,18 @@ static void test_error(void) { assert_se(sd_bus_error_is_set(&error)); } +extern const sd_bus_name_error_mapping __start_sd_bus_errnomap[]; +extern const sd_bus_name_error_mapping __stop_sd_bus_errnomap[]; + +static void dump_mapping_table(void) { + const sd_bus_name_error_mapping *m; + + printf("----- errno mappings ------\n"); + for (m = __start_sd_bus_errnomap; m < __stop_sd_bus_errnomap; m++) + printf("%s -> %d\n", m->name, m->code); + printf("---------------------------\n"); +} + static void test_errno_mapping_standard(void) { assert_se(sd_bus_error_set(NULL, "System.Error.EUCLEAN", NULL) == -EUCLEAN); assert_se(sd_bus_error_set(NULL, "System.Error.EBUSY", NULL) == -EBUSY); @@ -118,7 +130,7 @@ static void test_errno_mapping_standard(void) { assert_se(sd_bus_error_set(NULL, "System.Error.WHATSIT", NULL) == -EIO); } -SD_BUS_ERROR_MAPPING = { +SD_BUS_ERROR_MAPPING(test) = { {"org.freedesktop.custom-dbus-error", 5}, {"org.freedesktop.custom-dbus-error-2", 52}, }; @@ -130,6 +142,7 @@ static void test_errno_mapping_custom(void) { } int main(int argc, char *argv[]) { + dump_mapping_table(); test_error(); test_errno_mapping_standard();