Changeset 244


Ignore:
Timestamp:
07/16/07 11:38:44 (5 years ago)
Author:
marc
Message:

Minor improvement to HTTP Authentication. Don't clean status labels on server restart.

Location:
trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/ChangeLog

    r243 r244  
    44 * Added RPM packages 
    55 * Simplified and improved Makefile 
    6  * Cleaning of the code to try to be at least more compatible with PEP-8. 
     6 * Cleaning of the code to try to be at least more compatible with PEP-8 
     7 * Dont clean out status labels when restarting server 
    78 
    890.2.1: 
  • trunk/server.py

    r243 r244  
    290290        return self.authenticated 
    291291 
    292  
    293292    def return_object_data(self): 
    294293        """ 
     
    304303            self.request.setHeader('Content-Length', self.size) 
    305304            self.request.setHeader('Connection', 'close') 
    306             # Deauthenticate if it's the screenshot 
     305            # Deauthenticate if it's the screenshot (last object request) 
    307306            if self.session_end: 
    308307                self.authenticated = False 
     
    383382        @param gui_instance: An instance of our L{Gui} class 
    384383 
    385         @type gui_instance: AuthenticatedResource 
    386         @param gui_instance: An instance of our L{AuthenticatedResource} class 
     384        @type auth_instance: AuthenticatedResource 
     385        @param auth_instance: An instance of our L{AuthenticatedResource} class 
    387386        """ 
    388387 
     
    396395        self.counter = 0 
    397396 
    398  
    399     def take_shot(self): 
     397    def get_screenshot(self): 
    400398        """ 
    401399        Takes a screenshot and notify the GUI. 
     
    428426        @type request: instance 
    429427        @param request: twisted.web.server.Request instance 
    430  
    431         @rtype: str 
    432         @return: Screenshot image 
    433         """ 
    434  
     428        """ 
     429 
     430        # Get up to date configuration values everytime there is a request 
     431        self.configuration = self.gui.configuration 
    435432        self.request = request 
    436         if (self.request.uri == "/screenshot"): 
    437  
    438             # Get up to date configuration values everytime there is a request 
    439             self.configuration = self.gui.configuration 
    440  
    441             self.ip = self.request.getClientIP() 
    442             self.time = datetime.datetime.now() 
    443             self.type = "image/" + self.configuration['screenshot']['format'] 
    444  
    445             if self.configuration['server']['authentication']: 
    446                 if self.auth.authenticated: 
    447                     try: 
    448                         self.take_shot() 
    449                     except error.ItakaScreenshotError: 
    450                         return 
    451                     self.auth.set_request_data(self.data, self.size, self.type, True) 
    452                 else: 
    453                     if self.auth.authenticate(self.request): 
    454                         try: 
    455                             self.take_shot() 
    456                         except error.ItakaScreenshotError: 
    457                             return 
    458                         self.auth.set_request_data(self.data, self.size, self.type, True) 
    459                 return self.auth.return_object_data() 
    460             else: 
     433        self.ip = self.request.getClientIP() 
     434        self.time = datetime.datetime.now() 
     435        self.type = "image/" + self.configuration['screenshot']['format'] 
     436 
     437        if self.configuration['server']['authentication']: 
     438            if self.auth.authenticated or self.auth.authenticate(self.request): 
    461439                try: 
    462                     self.take_shot() 
     440                    self.get_screenshot() 
    463441                except error.ItakaScreenshotError: 
    464442                    return 
    465                 self.request.setHeader('Content-Type', self.type) 
    466                 self.request.setHeader('Content-Length', self.size) 
    467                 self.request.setHeader('Connection', 'close') 
    468                 return self.data 
     443                self.auth.set_request_data(self.data, self.size, self.type, True) 
     444            return self.auth.return_object_data() 
     445        else: 
     446            try: 
     447                self.get_screenshot() 
     448            except error.ItakaScreenshotError: 
     449                return 
     450            self.request.setHeader('Content-Type', self.type) 
     451            self.request.setHeader('Content-Length', self.size) 
     452            self.request.setHeader('Connection', 'close') 
     453            return self.data 
  • trunk/uigtk.py

    r242 r244  
    11841184 
    11851185            # Change GUI elements 
    1186             if (foreign): 
     1186            if foreign: 
    11871187                self.button_start_stop.set_active(False) 
    11881188 
     
    11911191            self.button_start_stop.set_image(self.start_stop_image) 
    11921192            self.button_start_stop.set_label(_('Start')) 
    1193             self.label_last_ip.set_text('') 
    1194             self.label_time.set_text('') 
    1195             self.label_served.set_text('') 
     1193            if not foreign: 
     1194                self.label_last_ip.set_text('') 
     1195                self.label_time.set_text('') 
     1196                self.label_served.set_text('') 
    11961197            self.menu_item_start.set_sensitive(True) 
    11971198            self.menu_item_stop.set_sensitive(False) 
Note: See TracChangeset for help on using the changeset viewer.