Diff between 7b78c20b7eaa5a3d254e710644d0394cd28b45fc and 85a71aa4e1209f123701bae1455debbcf4aadcce

Changed Files

File Additions Deletions Status
android/ipc.c +7 -1 modified
android/ipc.h +3 -0 modified

Full Patch

diff --git a/android/ipc.c b/android/ipc.c
index fc58a1c..2e67428 100644
--- a/android/ipc.c
+++ b/android/ipc.c
@@ -404,11 +404,17 @@ void ipc_send_rsp_full(struct ipc *ipc, uint8_t service_id, uint8_t opcode,
 void ipc_send_notif(struct ipc *ipc, uint8_t service_id, uint8_t opcode,
 						uint16_t len, void *param)
 {
+	return ipc_send_notif_with_fd(ipc, service_id, opcode, len, param, -1);
+}
+
+void ipc_send_notif_with_fd(struct ipc *ipc, uint8_t service_id, uint8_t opcode,
+					uint16_t len, void *param, int fd)
+{
 	if (!ipc || !ipc->notif_io)
 		return;
 
 	ipc_send(g_io_channel_unix_get_fd(ipc->notif_io), service_id, opcode,
-								len, param, -1);
+								len, param, fd);
 }
 
 void ipc_register(struct ipc *ipc, uint8_t service,
diff --git a/android/ipc.h b/android/ipc.h
index e97f0e6..fd2b985 100644
--- a/android/ipc.h
+++ b/android/ipc.h
@@ -42,6 +42,9 @@ void ipc_send_rsp_full(struct ipc *ipc, uint8_t service_id, uint8_t opcode,
 					uint16_t len, void *param, int fd);
 void ipc_send_notif(struct ipc *ipc, uint8_t service_id, uint8_t opcode,
 						uint16_t len, void *param);
+void ipc_send_notif_with_fd(struct ipc *ipc, uint8_t service_id, uint8_t opcode,
+					uint16_t len, void *param, int fd);
+
 void ipc_register(struct ipc *ipc, uint8_t service,
 			const struct ipc_handler *handlers, uint8_t size);
 void ipc_unregister(struct ipc *ipc, uint8_t service);