KvasirSecurity/Kvasir — pull request #146 by juushya (2014-10-16 07:16:17+00:00)
Title: Fix for Traceback post create new vuln

When I create a new vuln which is not present in the existing vuln db, in the bottom, there are three tabs - Hosts, Exploits and References.
After entering details of and saving the new vuln, Kvasir waits for some time and later throws a traceback under the Hosts tab.

Initial traceback is with 'id' field shown below -

Traceback (most recent call last):\n File "/opt/SPA/web2py/gluon/restricted.py", line 224, in restricted\n exec ccode in environment\n File "/opt/SPA/web2py/applications
/telconetint/controllers/vulns.py", line 807, in \n File "/opt/SPA/web2py/gluon/globals.py", line 393, in \n self._caller = lambda f: f()\n File "/opt/SPA/
web2py/gluon/tools.py", line 3439, in f\n return action(*a, **b)\n File "/opt/SPA/web2py/applications/kvasir/controllers/vulns.py", line 107, in vuln_hosts_by_vulnid\n
paginate=None,\n File "/opt/SPA/web2py/gluon/sqlhtml.py", line 2355, in grid\n search_menu = SQLFORM.search_menu(sfields, prefix=prefix)\n File "/opt/SPA/web2py/gluon/
sqlhtml.py", line 1833, in search_menu\n _class=\'form-control\',\n File "/opt/SPA/web2py/gluon/validators.py", line 579, in options\n self.build_set()\n File "/opt/SPA
/web2py/gluon/validators.py", line 576, in build_set\n self.labels = [self.label(r) for r in records]\n File "/opt/SPA/web2py/applications/kvasir/models/db_02_kvasir.p
y", line 80, in \n format=lambda r:XML("%s :: %s/%s" % (db.t_hosts[r.f_hosts_id.id].f_ipaddr, r.f_proto, r.f_number)),\nAttributeError: \'NoneType\' object has no at
tribute \'id\'\n'

.....
I figured 'id' can be removed and so can f_ipaddr. I am not sure if removing these will affect any other component / modules. Still getting started on kvasir code base. So please check.