Changeset 62 in code for trunk


Ignore:
Timestamp:
Jan 18, 2022, 6:46:54 AM (3 years ago)
Author:
dev
Message:

Merge branch 'master' of git.z3bra.org:partage

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/partage.go

    r61 r62  
    336336
    337337        if conf.listen[0] == '/' {
    338                 listener, err = net.Listen("unix", conf.listen)
    339                 if err != nil {
     338                /* Remove any stale socket */
     339                os.Remove(conf.listen)
     340                if listener, err = net.Listen("unix", conf.listen); err != nil {
    340341                        log.Fatal(err)
    341342                }
    342 
    343                 /* Ensure unix socket is removed on exit */
     343                defer listener.Close()
     344
     345                /*
     346                 * Ensure unix socket is removed on exit.
     347                 * Note: this might not work when dropping privileges…
     348                 */
    344349                defer os.Remove(conf.listen)
    345350                sigs := make(chan os.Signal, 1)
    346                 signal.Notify(sigs, syscall.SIGINT, syscall.SIGTERM)
     351                signal.Notify(sigs, os.Interrupt, os.Kill, syscall.SIGTERM)
    347352                go func() {
    348353                        _ = <-sigs
    349                         os.Remove(conf.listen)
     354                        listener.Close()
     355                        if err = os.Remove(conf.listen); err != nil {
     356                                log.Fatal(err)
     357                        }
    350358                        os.Exit(0)
    351359                }()
    352360        } else {
    353                 listener, err = net.Listen("tcp", conf.listen)
    354                 if err != nil {
     361                if listener, err = net.Listen("tcp", conf.listen); err != nil {
    355362                        log.Fatal(err)
    356363                }
     364                defer listener.Close()
    357365        }
    358366
Note: See TracChangeset for help on using the changeset viewer.