diff options
Diffstat (limited to 'src/replication.c')
-rw-r--r-- | src/replication.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/replication.c b/src/replication.c index 3bc42d62a..9175bb420 100644 --- a/src/replication.c +++ b/src/replication.c @@ -1661,7 +1661,13 @@ void syncWithMaster(aeEventLoop *el, int fd, void *privdata, int mask) { /* AUTH with the master if required. */ if (server.repl_state == REPL_STATE_SEND_AUTH) { - if (server.masterauth) { + if (server.masteruser && server.masterauth) { + err = sendSynchronousCommand(SYNC_CMD_WRITE,fd,"AUTH", + server.masteruser,server.masterauth,NULL); + if (err) goto write_error; + server.repl_state = REPL_STATE_RECEIVE_AUTH; + return; + } else if (server.masterauth) { err = sendSynchronousCommand(SYNC_CMD_WRITE,fd,"AUTH",server.masterauth,NULL); if (err) goto write_error; server.repl_state = REPL_STATE_RECEIVE_AUTH; |