--- a/lib/pb-protocol/pb-protocol.c
+++ b/lib/pb-protocol/pb-protocol.c
@@ -201,7 +201,7 @@ int pb_protocol_write_message(int fd, st
 }
 
 struct pb_protocol_message *pb_protocol_create_message(void *ctx,
-		int action, int payload_len)
+		enum pb_protocol_action action, int payload_len)
 {
 	struct pb_protocol_message *message;
 
--- a/lib/pb-protocol/pb-protocol.h
+++ b/lib/pb-protocol/pb-protocol.h
@@ -52,7 +52,7 @@ int pb_protocol_serialise_device(struct 
 int pb_protocol_write_message(int fd, struct pb_protocol_message *message);
 
 struct pb_protocol_message *pb_protocol_create_message(void *ctx,
-		int action, int payload_len);
+		enum pb_protocol_action action, int payload_len);
 
 struct pb_protocol_message *pb_protocol_read_message(void *ctx, int fd);
 
