def evalCmd(self, cmd, first=None, last=None): retVal = None if self.webBackdoorUrl and not isTechniqueAvailable(PAYLOAD.TECHNIQUE.STACKED): retVal = self.webBackdoorRunCmd(cmd) elif Backend.getIdentifiedDbms() in ( DBMS.MYSQL, DBMS.PGSQL ): retVal = self.udfEvalCmd(cmd, first, last) elif Backend.isDbms(DBMS.MSSQL): retVal = self.xpCmdshellEvalCmd(cmd, first, last) else: errMsg = "Feature not yet implemented for the back-end DBMS" raise sqlmapUnsupportedFeatureException, errMsg return safechardecode(retVal)
def insert(self, values): """ This function is used for inserting row(s) into current table. """ if len(values) == len(self.columns): self.parent.cursor.execute('INSERT INTO "%s" VALUES (%s)' % (self.name, ','.join(['?']*len(values))), safechardecode(values)) else: errMsg = "wrong number of columns used in replicating insert" raise sqlmapValueException, errMsg