|
@@ -1205,11 +1205,20 @@ func ListenAndServe(proto, addr string, job *engine.Job) error {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ var oldmask int
|
|
|
|
+ if proto == "unix" {
|
|
|
|
+ oldmask = syscall.Umask(0777)
|
|
|
|
+ }
|
|
|
|
+
|
|
if job.GetenvBool("BufferRequests") {
|
|
if job.GetenvBool("BufferRequests") {
|
|
l, err = listenbuffer.NewListenBuffer(proto, addr, activationLock)
|
|
l, err = listenbuffer.NewListenBuffer(proto, addr, activationLock)
|
|
} else {
|
|
} else {
|
|
l, err = net.Listen(proto, addr)
|
|
l, err = net.Listen(proto, addr)
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ if proto == "unix" {
|
|
|
|
+ syscall.Umask(oldmask)
|
|
|
|
+ }
|
|
if err != nil {
|
|
if err != nil {
|
|
return err
|
|
return err
|
|
}
|
|
}
|
|
@@ -1247,9 +1256,6 @@ func ListenAndServe(proto, addr string, job *engine.Job) error {
|
|
log.Println("/!\\ DON'T BIND ON ANOTHER IP ADDRESS THAN 127.0.0.1 IF YOU DON'T KNOW WHAT YOU'RE DOING /!\\")
|
|
log.Println("/!\\ DON'T BIND ON ANOTHER IP ADDRESS THAN 127.0.0.1 IF YOU DON'T KNOW WHAT YOU'RE DOING /!\\")
|
|
}
|
|
}
|
|
case "unix":
|
|
case "unix":
|
|
- if err := os.Chmod(addr, 0660); err != nil {
|
|
|
|
- return err
|
|
|
|
- }
|
|
|
|
socketGroup := job.Getenv("SocketGroup")
|
|
socketGroup := job.Getenv("SocketGroup")
|
|
if socketGroup != "" {
|
|
if socketGroup != "" {
|
|
if err := changeGroup(addr, socketGroup); err != nil {
|
|
if err := changeGroup(addr, socketGroup); err != nil {
|
|
@@ -1261,6 +1267,9 @@ func ListenAndServe(proto, addr string, job *engine.Job) error {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ if err := os.Chmod(addr, 0660); err != nil {
|
|
|
|
+ return err
|
|
|
|
+ }
|
|
default:
|
|
default:
|
|
return fmt.Errorf("Invalid protocol format.")
|
|
return fmt.Errorf("Invalid protocol format.")
|
|
}
|
|
}
|