]> Cypherpunks.ru repositories - goircd.git/blobdiff - events.go
Daemon does not need reloading for passwords via HUP
[goircd.git] / events.go
index 30444dad06d0d18aeacc07bd7551fcb390c8756e..bc659a6c9eeb0e8302d6e55abecb492245622707 100644 (file)
--- a/events.go
+++ b/events.go
@@ -1,6 +1,6 @@
 /*
 goircd -- minimalistic simple Internet Relay Chat (IRC) server
-Copyright (C) 2014 Sergey Matveev <stargrave@stargrave.org>
+Copyright (C) 2014-2015 Sergey Matveev <stargrave@stargrave.org>
 
 This program is free software: you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
@@ -15,6 +15,7 @@ GNU General Public License for more details.
 You should have received a copy of the GNU General Public License
 along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
+
 package main
 
 import (
@@ -65,9 +66,12 @@ func Logger(logdir string, events <-chan LogEvent) {
        mode := os.O_CREATE | os.O_WRONLY | os.O_APPEND
        perm := os.FileMode(0660)
        var format string
+       var logfile string
+       var fd *os.File
+       var err error
        for event := range events {
-               logfile := path.Join(logdir, event.where)
-               fd, err := os.OpenFile(logfile, mode, perm)
+               logfile = path.Join(logdir, event.where + ".log")
+               fd, err = os.OpenFile(logfile, mode, perm)
                if err != nil {
                        log.Println("Can not open logfile", logfile, err)
                        continue
@@ -95,10 +99,13 @@ type StateEvent struct {
 // Room states shows that either topic or key has been changed
 // Each room's state is written to separate file in statedir
 func StateKeeper(statedir string, events <-chan StateEvent) {
+       var fn string
+       var data string
+       var err error
        for event := range events {
-               fn := path.Join(statedir, event.where)
-               data := event.topic + "\n" + event.key + "\n"
-               err := ioutil.WriteFile(fn, []byte(data), os.FileMode(0660))
+               fn = path.Join(statedir, event.where)
+               data = event.topic + "\n" + event.key + "\n"
+               err = ioutil.WriteFile(fn, []byte(data), os.FileMode(0660))
                if err != nil {
                        log.Printf("Can not write statefile %s: %v", fn, err)
                }