]> git.ozlabs.org Git - petitboot/blobdiff - lib/pb-protocol/pb-protocol.c
Consolidate petitboot,tty and petitboot,console
[petitboot] / lib / pb-protocol / pb-protocol.c
index 0d83bde0d11fca8f7b4902755cfa13e458a6277f..47d04a399e4a4fd0ff2420356f32c523e7d0c07a 100644 (file)
@@ -323,6 +323,7 @@ int pb_protocol_config_len(const struct config *config)
                len += 4 + optional_strlen(config->consoles[i]);
 
        len += 4 + optional_strlen(config->boot_console);
+       len += 4; /* manual_console */
 
        len += 4 + optional_strlen(config->lang);
 
@@ -579,6 +580,8 @@ int pb_protocol_serialise_config(const struct config *config,
                pos += pb_protocol_serialise_string(pos, config->consoles[i]);
 
        pos += pb_protocol_serialise_string(pos, config->boot_console);
+       *(uint32_t *)pos = config->manual_console;
+       pos += 4;
 
        pos += pb_protocol_serialise_string(pos, config->lang);
 
@@ -1124,6 +1127,10 @@ int pb_protocol_deserialise_config(struct config *config,
 
        config->boot_console = str;
 
+       if (read_u32(&pos, &len, &tmp))
+               goto out;
+       config->manual_console = !!tmp;
+
        if (read_string(config, &pos, &len, &str))
                goto out;