(self, fd)
return self.fd.get(fd)
Looks up the SimFileDescriptor associated with the given number (an AST).
        If the number is concrete and does not map to anything, return None.
        If the number is symbolic, constrain it to an open fd and create a new file for it.
Looks up the SimFileDescriptor associated with the given number (an AST).
        If the number is concrete and does not map to anything, return None.
        If the number is symbolic, constrain it to an open fd and create a new file for it.
Looks up the SimFileDescriptor associated with the given number ( an AST ) . If the number is concrete and does not map to anything return None . If the number is symbolic constrain it to an open fd and create a new file for it .
def get_fd(self, fd):
        """
        Looks up the SimFileDescriptor associated with the given number (an AST).
        If the number is concrete and does not map to anything, return None.
        If the number is symbolic, constrain it to an open fd and create a new file for it.
        """

        try:
            fd = self.state.solver.eval_one(fd)
            return self.fd.get(fd)
        except SimSolverError:
            pass

        ideal = self._pick_fd()
        self.state.add_constraints(fd == ideal)
        if not self.state.solver.satisfiable():
            raise SimPosixError("Tried to do operation on symbolic but partially constrained file descriptor")
        fd = ideal
        new_filename = b'/tmp/angr_implicit_%d' % self.autotmp_counter
        l.warning("Tried to look up a symbolic fd - constrained to %d and opened %s", ideal, new_filename)
        self.autotmp_counter += 1
        if self.open(new_filename, Flags.O_RDWR, preferred_fd=fd) != fd:
            raise SimPosixError("Something went wrong trying to open implicit temp")

        return self.fd.get(fd)
def get_fd ( self , fd ) : try : fd = self . state . solver . eval_one ( fd ) return self . fd . get ( fd ) except SimSolverError : pass ideal = self . _pick_fd ( ) self . state . add_constraints ( fd == ideal ) if not self . state . solver . satisfiable ( ) : raise SimPosixError ( "Tried to do operation on symbolic but partially constrained file descriptor" ) fd = ideal new_filename = b'/tmp/angr_implicit_%d' % self . autotmp_counter l . warning ( "Tried to look up a symbolic fd - constrained to %d and opened %s" , ideal , new_filename ) self . autotmp_counter += 1 if self . open ( new_filename , Flags . O_RDWR , preferred_fd = fd ) != fd : raise SimPosixError ( "Something went wrong trying to open implicit temp" ) return self . fd . get ( fd )