Changeset 345

Show
Ignore:
Timestamp:
12/09/99 14:39:06 (15 years ago)
Author:
ucaccsp
Message:

Pull code to rewrite the config file/registry entries out of
mbus_lock_config and into a separate function. First part of
the move to having a version number in the config file.

Location:
common/trunk/src
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • common/trunk/src/mbus_config.c

    r343 r345  
    127127} 
    128128 
     129static void rewrite_config(struct mbus_config *m) 
     130{ 
     131#ifdef WIN32 
     132        char    *hashkey = mbus_new_hashkey(); 
     133        char    *encrkey = mbus_new_encrkey(); 
     134        char    *scope   = MBUS_DEFAULT_SCOPE_NAME; 
     135 
     136        status = RegSetValueEx(m->cfgKey, "HASHKEY", 0, REG_SZ, hashkey, strlen(hashkey) + 1); 
     137        if (status != ERROR_SUCCESS) { 
     138                FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, NULL, status, 0, buffer, MBUS_BUF_SIZE, NULL); 
     139                debug_msg("Unable to set hashkey: %s\n", buffer); 
     140                abort(); 
     141        }        
     142        status = RegSetValueEx(m->cfgKey, "ENCRYPTIONKEY", 0, REG_SZ, encrkey, strlen(encrkey) + 1); 
     143        if (status != ERROR_SUCCESS) { 
     144                FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, NULL, status, 0, buffer, MBUS_BUF_SIZE, NULL); 
     145                debug_msg("Unable to set encrkey: %s\n", buffer); 
     146                abort(); 
     147        }        
     148        status = RegSetValueEx(m->cfgKey, "SCOPE", 0, REG_SZ, scope, strlen(scope) + 1); 
     149        if (status != ERROR_SUCCESS) { 
     150                FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, NULL, status, 0, buffer, MBUS_BUF_SIZE, NULL); 
     151                debug_msg("Unable to set scope: %s\n", buffer); 
     152                abort(); 
     153        }        
     154#else 
     155        char    *hashkey = mbus_new_hashkey(); 
     156        char    *encrkey = mbus_new_encrkey(); 
     157        char    *scope   = "HOSTLOCAL"; 
     158        int      len; 
     159        char    *buf; 
     160 
     161        len = strlen(hashkey) + strlen(encrkey) + strlen(scope) + 39; 
     162        buf = (char *) xmalloc(len); 
     163        sprintf(buf, "[MBUS]\nHASHKEY=%s\nENCRYPTIONKEY=%s\nSCOPE=%s\n", hashkey, encrkey, scope); 
     164        write(m->cfgfd, buf, strlen(buf)); 
     165        xfree(buf); 
     166        free(hashkey); 
     167        xfree(encrkey); 
     168#endif 
     169} 
     170 
    129171void mbus_lock_config_file(struct mbus_config *m) 
    130172{ 
     
    146188        } 
    147189        if (disp == REG_CREATED_NEW_KEY) { 
    148                 char    *hashkey = mbus_new_hashkey(); 
    149                 char    *encrkey = mbus_new_encrkey(); 
    150                 char    *scope   = SCOPE_HOSTLOCAL_NAME; 
    151  
    152                 status = RegSetValueEx(m->cfgKey, "HASHKEY", 0, REG_SZ, hashkey, strlen(hashkey) + 1); 
    153                 if (status != ERROR_SUCCESS) { 
    154                         FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, NULL, status, 0, buffer, MBUS_BUF_SIZE, NULL); 
    155                         debug_msg("Unable to set hashkey: %s\n", buffer); 
    156                         abort(); 
    157                 }        
    158                 status = RegSetValueEx(m->cfgKey, "ENCRYPTIONKEY", 0, REG_SZ, encrkey, strlen(encrkey) + 1); 
    159                 if (status != ERROR_SUCCESS) { 
    160                         FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, NULL, status, 0, buffer, MBUS_BUF_SIZE, NULL); 
    161                         debug_msg("Unable to set encrkey: %s\n", buffer); 
    162                         abort(); 
    163                 }        
    164                 status = RegSetValueEx(m->cfgKey, "SCOPE", 0, REG_SZ, scope, strlen(scope) + 1); 
    165                 if (status != ERROR_SUCCESS) { 
    166                         FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, NULL, status, 0, buffer, MBUS_BUF_SIZE, NULL); 
    167                         debug_msg("Unable to set scope: %s\n", buffer); 
    168                         abort(); 
    169                 }        
     190                rewrite_config(m); 
    170191                debug_msg("Created new registry entry...\n"); 
    171192        } else { 
     
    242263        if (s.st_size == 0) { 
    243264                /* Empty file, create with sensible defaults... */ 
    244                 char    *hashkey = mbus_new_hashkey(); 
    245                 char    *encrkey = mbus_new_encrkey(); 
    246                 char    *scope   = "HOSTLOCAL"; 
    247                 int      len; 
    248  
    249                 len = strlen(hashkey) + strlen(encrkey) + strlen(scope) + 39; 
    250                 buf = (char *) xmalloc(len); 
    251                 sprintf(buf, "[MBUS]\nHASHKEY=%s\nENCRYPTIONKEY=%s\nSCOPE=%s\n", hashkey, encrkey, scope); 
    252                 write(m->cfgfd, buf, strlen(buf)); 
    253                 xfree(buf); 
    254                 free(hashkey); 
    255                 xfree(encrkey); 
    256                 debug_msg("Wrote config file\n"); 
     265                rewrite_config(m); 
    257266        } else { 
    258267                /* Read in the contents of the config file... */ 
  • common/trunk/src/mbus_config.h

    r343 r345  
    4545struct mbus_config; 
    4646 
    47 #define SCOPE_HOSTLOCAL       0 
    48 #define SCOPE_HOSTLOCAL_NAME "HOSTLOCAL" 
    49 #define SCOPE_LINKLOCAL       1 
    50 #define SCOPE_LINKLOCAL_NAME "LINKLOCAL" 
     47#define SCOPE_HOSTLOCAL          0 
     48#define SCOPE_HOSTLOCAL_NAME    "HOSTLOCAL" 
     49#define SCOPE_LINKLOCAL          1 
     50#define SCOPE_LINKLOCAL_NAME    "LINKLOCAL" 
    5151 
    52 #define MBUS_DEFAULT_NET_ADDR "224.255.222.239" 
    53 #define MBUS_DEFAULT_NET_PORT 47000 
    54 #define MBUS_DEFAULT_SCOPE    SCOPE_HOSTLOCAL 
    55  
     52#define MBUS_DEFAULT_NET_ADDR   "224.255.222.239" 
     53#define MBUS_DEFAULT_NET_PORT    47000 
     54#define MBUS_DEFAULT_SCOPE       SCOPE_HOSTLOCAL 
     55#define MBUS_DEFAULT_SCOPE_NAME  SCOPE_HOSTLOCAL_NAME 
    5656 
    5757#if defined(__cplusplus)