/mandos/trunk

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/trunk

« back to all changes in this revision

Viewing changes to mandos

  • Committer: Teddy Hogeborn
  • Date: 2008-09-05 18:19:52 UTC
  • mfrom: (24.1.91 mandos)
  • Revision ID: teddy@fukt.bsnet.se-20080905181952-qfuwtyvefanh9v3v
* mandos: Open the PID file before daemonizing, but write to it
          afterwards.

* plugin-runner.xml (SECURITY): Improved grammar.

Also merge.

Show diffs side-by-side

added added

removed removed

Lines of Context:
772
772
                                tcp_handler,
773
773
                                settings=server_settings,
774
774
                                clients=clients)
 
775
    pidfilename = "/var/run/mandos.pid"
 
776
    pidfile = None
 
777
    try:
 
778
        pidfile = open(pidfilename, "w")
 
779
    except IOError, error:
 
780
        logger.error("Could not open file %r", pidfilename)
 
781
    
775
782
    uid = 65534
776
783
    gid = 65534
777
784
    try:
794
801
    except OSError, error:
795
802
        if error[0] != errno.EPERM:
796
803
            raise error
797
 
 
 
804
    
798
805
    global service
799
806
    service = AvahiService(name = server_settings["servicename"],
800
807
                           type = "_mandos._tcp", );
841
848
        # Close all input and output, do double fork, etc.
842
849
        daemon()
843
850
    
844
 
    pidfilename = "/var/run/mandos.pid"
845
 
    pid = os.getpid()
846
 
    try:
847
 
        pidfile = open(pidfilename, "w")
848
 
        pidfile.write(str(pid) + "\n")
849
 
        pidfile.close()
850
 
        del pidfile
851
 
    except IOError, err:
852
 
        logger.error(u"Could not write %s file with PID %d",
853
 
                     pidfilename, os.getpid())
 
851
    if pidfile is not None:
 
852
        pid = os.getpid()
 
853
        try:
 
854
            pidfile.write(str(pid) + "\n")
 
855
            pidfile.close()
 
856
        except IOError, err:
 
857
            logger.error(u"Could not write %s file with PID %d",
 
858
                         pidfilename, os.getpid())
 
859
    del pidfile
 
860
    del pidfilename
854
861
    
855
862
    def cleanup():
856
863
        "Cleanup function; run on exit"