• Luis Soares's avatar
    Fix for crash in mysqld --verbose --help while initializing option · 86de24ed
    Luis Soares authored
    for --init-rpl-role.
    
    Problem: There are two variables involved in this issue,
    rpl_status and rpl_role_type. The former is an array containing
    the description of the possible values for the latter.
    
    rpl_status is declared as an enumeration and is stored in a 4
    bytes integer. On the other hand, my_getopt, reads enum values
    into a ulong:
    
      *(ulong*)value= arg;
    
    This is overwriting the memory used for rpl_role_type, 
    corrupting the first entry in the array.
    
    Fix: We fix this by re-declaring rpl_status as a ulong, so that it
    has space to accommodate the value "parsed" in my_getopt .
    86de24ed
repl_failsafe.h 1.98 KB