7
7
"os"
8
8
"os/signal"
9
9
"syscall"
10
+ "time"
10
11
11
12
mounterUtils "github.com/IBM/ibm-object-csi-driver/pkg/mounter/utils"
12
13
"github.com/gin-gonic/gin"
@@ -46,7 +47,11 @@ func setUpLogger() *zap.Logger {
46
47
47
48
func main () {
48
49
// Always create fresh socket file
49
- os .Remove (socketPath )
50
+ err := os .Remove (socketPath )
51
+ if err != nil {
52
+ // Handle it properly: log it, retry, return, etc.
53
+ logger .Warn ("Failed to remove Socket File" )
54
+ }
50
55
51
56
// Create a listener
52
57
logger .Info ("Creating unix socket listener..." )
@@ -62,7 +67,11 @@ func main() {
62
67
signal .Notify (signals , syscall .SIGINT , syscall .SIGTERM )
63
68
go func () {
64
69
<- signals
65
- os .Remove (socketPath )
70
+ err := os .Remove (socketPath )
71
+ if err != nil {
72
+ // Handle it properly: log it, retry, return, etc.
73
+ logger .Warn ("Failed to remove Socket File" )
74
+ }
66
75
os .Exit (0 )
67
76
}()
68
77
@@ -75,7 +84,12 @@ func main() {
75
84
router .POST ("/api/cos/unmount" , handleCosUnmount ())
76
85
77
86
// Serve HTTP requests over Unix socket
78
- err = http .Serve (listener , router )
87
+ // err = http.Serve(listener, router)
88
+ server := & http.Server {
89
+ Handler : router ,
90
+ ReadHeaderTimeout : 3 * time .Second ,
91
+ }
92
+ err = server .Serve (listener )
79
93
if err != nil {
80
94
logger .Fatal ("Error while serving HTTP requests:" , zap .Error (err ))
81
95
}
0 commit comments