88
99static BUS_DEFINE_PROPERTY_GET_ENUM (property_get_kill_mode , kill_mode , KillMode ) ;
1010
11+ static int property_get_restart_kill_signal (
12+ sd_bus * bus ,
13+ const char * path ,
14+ const char * interface ,
15+ const char * property ,
16+ sd_bus_message * reply ,
17+ void * userdata ,
18+ sd_bus_error * error ) {
19+ KillContext * c = userdata ;
20+ int s ;
21+
22+ assert (c );
23+
24+ s = restart_kill_signal (c );
25+ return sd_bus_message_append_basic (reply , 'i' , & s );
26+ }
27+
1128const sd_bus_vtable bus_kill_vtable [] = {
1229 SD_BUS_VTABLE_START (0 ),
1330 SD_BUS_PROPERTY ("KillMode" , "s" , property_get_kill_mode , offsetof(KillContext , kill_mode ), SD_BUS_VTABLE_PROPERTY_CONST ),
1431 SD_BUS_PROPERTY ("KillSignal" , "i" , bus_property_get_int , offsetof(KillContext , kill_signal ), SD_BUS_VTABLE_PROPERTY_CONST ),
32+ SD_BUS_PROPERTY ("RestartKillSignal" , "i" , property_get_restart_kill_signal , 0 , SD_BUS_VTABLE_PROPERTY_CONST ),
1533 SD_BUS_PROPERTY ("FinalKillSignal" , "i" , bus_property_get_int , offsetof(KillContext , final_kill_signal ), SD_BUS_VTABLE_PROPERTY_CONST ),
1634 SD_BUS_PROPERTY ("SendSIGKILL" , "b" , bus_property_get_bool , offsetof(KillContext , send_sigkill ), SD_BUS_VTABLE_PROPERTY_CONST ),
1735 SD_BUS_PROPERTY ("SendSIGHUP" , "b" , bus_property_get_bool , offsetof(KillContext , send_sighup ), SD_BUS_VTABLE_PROPERTY_CONST ),
@@ -21,6 +39,7 @@ const sd_bus_vtable bus_kill_vtable[] = {
2139
2240static BUS_DEFINE_SET_TRANSIENT_PARSE (kill_mode , KillMode , kill_mode_from_string ) ;
2341static BUS_DEFINE_SET_TRANSIENT_TO_STRING (kill_signal , "i ", int32_t , int , "%" PRIi32 , signal_to_string_with_check ) ;
42+ static BUS_DEFINE_SET_TRANSIENT_TO_STRING (restart_kill_signal , "i ", int32_t , int , "%" PRIi32 , signal_to_string_with_check ) ;
2443static BUS_DEFINE_SET_TRANSIENT_TO_STRING (final_kill_signal , "i ", int32_t , int , "%" PRIi32 , signal_to_string_with_check ) ;
2544static BUS_DEFINE_SET_TRANSIENT_TO_STRING (watchdog_signal , "i ", int32_t , int , "%" PRIi32 , signal_to_string_with_check ) ;
2645
@@ -51,6 +70,9 @@ int bus_kill_context_set_transient_property(
5170 if (streq (name , "KillSignal" ))
5271 return bus_set_transient_kill_signal (u , name , & c -> kill_signal , message , flags , error );
5372
73+ if (streq (name , "RestartKillSignal" ))
74+ return bus_set_transient_restart_kill_signal (u , name , & c -> restart_kill_signal , message , flags , error );
75+
5476 if (streq (name , "FinalKillSignal" ))
5577 return bus_set_transient_final_kill_signal (u , name , & c -> final_kill_signal , message , flags , error );
5678
0 commit comments