2016-01-28 10:16:26 -05:00
|
|
|
package main
|
|
|
|
|
|
|
|
import (
|
2021-04-19 20:43:37 -04:00
|
|
|
"github.com/go-i2p/go-i2p/lib/router"
|
2021-04-19 20:51:15 -04:00
|
|
|
"github.com/go-i2p/go-i2p/lib/util/signals"
|
|
|
|
log "github.com/sirupsen/logrus"
|
2016-01-28 10:16:26 -05:00
|
|
|
)
|
|
|
|
|
|
|
|
func main() {
|
2017-08-27 10:48:34 -04:00
|
|
|
go signals.Handle()
|
2016-01-29 07:22:31 -05:00
|
|
|
log.Info("parsing i2p router configuration")
|
2016-01-28 10:16:26 -05:00
|
|
|
|
2016-01-29 07:22:31 -05:00
|
|
|
log.Info("starting up i2p router")
|
|
|
|
r, err := router.CreateRouter()
|
|
|
|
if err == nil {
|
2017-08-27 10:48:34 -04:00
|
|
|
signals.RegisterReloadHandler(func() {
|
|
|
|
// TODO: reload config
|
|
|
|
})
|
|
|
|
signals.RegisterInterruptHandler(func() {
|
|
|
|
// TODO: graceful shutdown
|
|
|
|
r.Stop()
|
|
|
|
})
|
2017-08-27 11:02:37 -04:00
|
|
|
r.Start()
|
2017-08-27 10:48:34 -04:00
|
|
|
r.Wait()
|
2017-08-27 11:02:37 -04:00
|
|
|
r.Close()
|
2016-01-29 07:22:31 -05:00
|
|
|
} else {
|
|
|
|
log.Errorf("failed to create i2p router: %s", err)
|
|
|
|
}
|
2016-01-28 10:16:26 -05:00
|
|
|
}
|