diff --git a/.gitignore b/.gitignore index d819c9cd58485954376acea690bb749582a2e4b1..0cfb2d80c0edebe4cbaa540f6cd484b937fb0295 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ -settings.py +flowspy/settings.py *.pyc celerybeat-schedule *.log celery_var/ urls.py +*~ diff --git a/accounts/admin.py b/accounts/admin.py index 3572f02959f502e4a173ccfa3f531637f355263e..d0b0c7a8fa73235ac3457855e3bbd8200ae91e94 100644 --- a/accounts/admin.py +++ b/accounts/admin.py @@ -1,26 +1,25 @@ -# # -*- coding: utf-8 -*- vim:fileencoding=utf-8: -#Copyright © 2011-2013 Greek Research and Technology Network (GRNET S.A.) +# vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab + +# Copyright © 2011-2014 Greek Research and Technology Network (GRNET S.A.) +# Copyright © 2011-2014 Leonidas Poulopoulos (@leopoul) +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD +# TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +# FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS +# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +# SOFTWARE. -#Developed by Leonidas Poulopoulos (leopoul-at-noc-dot-grnet-dot-gr), -#GRNET NOC -# -#Permission to use, copy, modify, and/or distribute this software for any -#purpose with or without fee is hereby granted, provided that the above -#copyright notice and this permission notice appear in all copies. -# -#THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD -#TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND -#FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR -#CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -#DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS -#ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS -#SOFTWARE. -# from django.contrib import admin -from flowspy.accounts.models import * +from accounts.models import * from django.contrib.auth.models import User -from flowspy.peers.models import * +from peers.models import * from django.conf import settings class UserPrAdmin(admin.ModelAdmin): diff --git a/accounts/models.py b/accounts/models.py index 933eb6b6ca4110c7d6d12d83d1f815ba591048b8..1f1c80943a8e9fcee1d1c9784524d7ba84c450a1 100644 --- a/accounts/models.py +++ b/accounts/models.py @@ -1,25 +1,24 @@ -# # -*- coding: utf-8 -*- vim:fileencoding=utf-8: -#Copyright © 2011-2013 Greek Research and Technology Network (GRNET S.A.) +# vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab + +# Copyright © 2011-2014 Greek Research and Technology Network (GRNET S.A.) +# Copyright © 2011-2014 Leonidas Poulopoulos (@leopoul) +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD +# TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +# FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS +# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +# SOFTWARE. -#Developed by Leonidas Poulopoulos (leopoul-at-noc-dot-grnet-dot-gr), -#GRNET NOC -# -#Permission to use, copy, modify, and/or distribute this software for any -#purpose with or without fee is hereby granted, provided that the above -#copyright notice and this permission notice appear in all copies. -# -#THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD -#TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND -#FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR -#CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -#DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS -#ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS -#SOFTWARE. -# from django.db import models from django.contrib.auth.models import User -from flowspy.peers.models import * +from peers.models import * class UserProfile(models.Model): diff --git a/accounts/views.py b/accounts/views.py index 456571bf42ceb2bc9b9a7d100857549a4677ad28..de2a4a909c21d30105be187af0675d064027cfb1 100644 --- a/accounts/views.py +++ b/accounts/views.py @@ -1,22 +1,21 @@ -# # -*- coding: utf-8 -*- vim:fileencoding=utf-8: -#Copyright © 2011-2013 Greek Research and Technology Network (GRNET S.A.) +# vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab + +# Copyright © 2011-2014 Greek Research and Technology Network (GRNET S.A.) +# Copyright © 2011-2014 Leonidas Poulopoulos (@leopoul) +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD +# TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +# FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS +# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +# SOFTWARE. -#Developed by Leonidas Poulopoulos (leopoul-at-noc-dot-grnet-dot-gr), -#GRNET NOC -# -#Permission to use, copy, modify, and/or distribute this software for any -#purpose with or without fee is hereby granted, provided that the above -#copyright notice and this permission notice appear in all copies. -# -#THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD -#TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND -#FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR -#CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -#DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS -#ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS -#SOFTWARE. -# from django.conf import settings from django.core.mail import send_mail from django.contrib.sites.models import Site @@ -24,9 +23,9 @@ from django.shortcuts import render_to_response from django.template.context import RequestContext from django.template.loader import render_to_string from django.utils.translation import ugettext_lazy as _ -from flowspy.accounts.models import * -from flowspy.peers.models import * -from flowspy.flowspec.forms import * +from accounts.models import * +from peers.models import * +from flowspec.forms import * from registration.models import RegistrationProfile from registration.views import activate as registration_activate from django.views.decorators.cache import never_cache diff --git a/context/global_vars.py b/context/global_vars.py index c2c2ac07dd6185120a32546f4c8f3bff53b6a83d..9c12d08b38a6391d8236e7d82d5b558548bcb65c 100644 --- a/context/global_vars.py +++ b/context/global_vars.py @@ -1,18 +1,20 @@ -# # -*- coding: utf-8 -*- vim:fileencoding=utf-8: -# Copyright © 2010-2012 Greek Research and Technology Network (GRNET S.A.) -# +# vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab + +# Copyright © 2011-2014 Greek Research and Technology Network (GRNET S.A.) +# Copyright © 2011-2014 Leonidas Poulopoulos (@leopoul) +# # Permission to use, copy, modify, and/or distribute this software for any # purpose with or without fee is hereby granted, provided that the above # copyright notice and this permission notice appear in all copies. -# -# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD # TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND -# FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, -# OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF -# USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER -# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE -# OF THIS SOFTWARE. +# FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS +# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +# SOFTWARE. from django.conf import settings diff --git a/djangobackends/shibauthBackend.py b/djangobackends/shibauthBackend.py index d39b6ab58183ceb969afaa0ab9d7eccad8b72e22..592f73c6b412e34d516636feafd064ca86705564 100644 --- a/djangobackends/shibauthBackend.py +++ b/djangobackends/shibauthBackend.py @@ -1,23 +1,20 @@ -# # -*- coding: utf-8 -*- vim:fileencoding=utf-8: # vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab -#Copyright © 2011-2013 Greek Research and Technology Network (GRNET S.A.) - -#Developed by Leonidas Poulopoulos (leopoul-at-noc-dot-grnet-dot-gr), -#GRNET NOC -# -#Permission to use, copy, modify, and/or distribute this software for any -#purpose with or without fee is hereby granted, provided that the above -#copyright notice and this permission notice appear in all copies. -# -#THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD -#TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND -#FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR -#CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -#DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS -#ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS -#SOFTWARE. -# + +# Copyright © 2011-2014 Greek Research and Technology Network (GRNET S.A.) +# Copyright © 2011-2014 Leonidas Poulopoulos (@leopoul) +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD +# TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +# FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS +# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +# SOFTWARE. from django.contrib.auth.models import User, UserManager, Permission, Group diff --git a/flowspec/admin.py b/flowspec/admin.py index 0b52325e9cb4d754b9c4edb64489d48db19181bd..5298edb1dc48d98f8833a0aac2653b1edce72f6c 100644 --- a/flowspec/admin.py +++ b/flowspec/admin.py @@ -1,35 +1,34 @@ -# # -*- coding: utf-8 -*- vim:fileencoding=utf-8: -#Copyright © 2011-2013 Greek Research and Technology Network (GRNET S.A.) - -#Developed by Leonidas Poulopoulos (leopoul-at-noc-dot-grnet-dot-gr), -#GRNET NOC -# -#Permission to use, copy, modify, and/or distribute this software for any -#purpose with or without fee is hereby granted, provided that the above -#copyright notice and this permission notice appear in all copies. -# -#THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD -#TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND -#FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR -#CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -#DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS -#ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS -#SOFTWARE. -# +# vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab + +# Copyright © 2011-2014 Greek Research and Technology Network (GRNET S.A.) +# Copyright © 2011-2014 Leonidas Poulopoulos (@leopoul) +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD +# TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +# FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS +# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +# SOFTWARE. + from django.contrib import admin -from flowspy.flowspec.models import * -from flowspy.accounts.models import * +from flowspec.models import * +from accounts.models import * from utils import proxy as PR -from flowspec.tasks import * +from tasks import * from django.contrib.auth.models import User from django.contrib.auth.admin import UserAdmin -from flowspy.peers.models import * -from flowspy.flowspec.forms import * +from peers.models import * +from flowspec.forms import * import datetime from django.conf import settings -from flowspy.monkey_patch.forms import UserCreationForm, UserChangeForm +from monkey_patch.forms import UserCreationForm, UserChangeForm class RouteAdmin(admin.ModelAdmin): form = RouteForm diff --git a/flowspec/forms.py b/flowspec/forms.py index 28b51415a657ec3f40c1a685d096983a7506132d..d6a45a0c0f388b151ffa060529a2942084b79396 100644 --- a/flowspec/forms.py +++ b/flowspec/forms.py @@ -1,30 +1,29 @@ -# # -*- coding: utf-8 -*- vim:fileencoding=utf-8: -#Copyright © 2011-2013 Greek Research and Technology Network (GRNET S.A.) +# vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab + +# Copyright © 2011-2014 Greek Research and Technology Network (GRNET S.A.) +# Copyright © 2011-2014 Leonidas Poulopoulos (@leopoul) +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD +# TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +# FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS +# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +# SOFTWARE. -#Developed by Leonidas Poulopoulos (leopoul-at-noc-dot-grnet-dot-gr), -#GRNET NOC -# -#Permission to use, copy, modify, and/or distribute this software for any -#purpose with or without fee is hereby granted, provided that the above -#copyright notice and this permission notice appear in all copies. -# -#THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD -#TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND -#FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR -#CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -#DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS -#ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS -#SOFTWARE. -# from django import forms from django.utils.safestring import mark_safe from django.utils.translation import ugettext as _ from django.utils.translation import ugettext_lazy from django.template.defaultfilters import filesizeformat -from flowspy.flowspec.models import * -from flowspy.peers.models import * -from flowspy.accounts.models import * +from flowspec.models import * +from peers.models import * +from accounts.models import * from ipaddr import * from django.core.urlresolvers import reverse from django.contrib.auth.models import User diff --git a/flowspec/models.py b/flowspec/models.py index f80f8f1a228955337bad64894c0688556e08aadf..588a0e2175c1fb9c5fd65d82ff6c1d091fdf4680 100644 --- a/flowspec/models.py +++ b/flowspec/models.py @@ -1,25 +1,20 @@ -# # -*- coding: utf-8 -*- vim:fileencoding=utf-8: # vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab -#Copyright © 2011-2013 Greek Research and Technology Network (GRNET S.A.) - -#Developed by Leonidas Poulopoulos (leopoul-at-noc-dot-grnet-dot-gr), -#GRNET NOC -# -#Permission to use, copy, modify, and/or distribute this software for any -#purpose with or without fee is hereby granted, provided that the above -#copyright notice and this permission notice appear in all copies. -# -#THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD -#TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND -#FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR -#CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -#DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS -#ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS -#SOFTWARE. -# - +# Copyright © 2011-2014 Greek Research and Technology Network (GRNET S.A.) +# Copyright © 2011-2014 Leonidas Poulopoulos (@leopoul) +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD +# TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +# FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS +# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +# SOFTWARE. from django.db import models from django.conf import settings @@ -32,9 +27,9 @@ import logging from time import sleep import beanstalkc -from flowspy.utils.randomizer import id_generator as id_gen +from utils.randomizer import id_generator as id_gen -from flowspec.tasks import * +from tasks import * FORMAT = '%(asctime)s %(levelname)s: %(message)s' logging.basicConfig(format=FORMAT) diff --git a/flowspec/tasks.py b/flowspec/tasks.py index b4011b7bcdddc814b5eb20230bbb6405d930e5f8..d31205755d497e8b8d2d2d9e4edaef897a9af1ca 100644 --- a/flowspec/tasks.py +++ b/flowspec/tasks.py @@ -1,22 +1,21 @@ -# # -*- coding: utf-8 -*- vim:fileencoding=utf-8: -#Copyright © 2011-2013 Greek Research and Technology Network (GRNET S.A.) - -#Developed by Leonidas Poulopoulos (leopoul-at-noc-dot-grnet-dot-gr), -#GRNET NOC -# -#Permission to use, copy, modify, and/or distribute this software for any -#purpose with or without fee is hereby granted, provided that the above -#copyright notice and this permission notice appear in all copies. -# -#THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD -#TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND -#FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR -#CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -#DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS -#ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS -#SOFTWARE. -# +# vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab + +# Copyright © 2011-2014 Greek Research and Technology Network (GRNET S.A.) +# Copyright © 2011-2014 Leonidas Poulopoulos (@leopoul) +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD +# TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +# FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS +# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +# SOFTWARE. + from utils import proxy as PR from celery.task import task from celery.task.sets import subtask diff --git a/flowspec/views.py b/flowspec/views.py index f7d26dc1be6ee9bbcf081ee3dc49f4e719d5fa48..4629d7772408919587b77981fe0202ac7cce827b 100644 --- a/flowspec/views.py +++ b/flowspec/views.py @@ -1,23 +1,21 @@ -# # -*- coding: utf-8 -*- vim:fileencoding=utf-8: -#Copyright © 2011-2013 Greek Research and Technology Network (GRNET S.A.) - -#Developed by Leonidas Poulopoulos (leopoul-at-noc-dot-grnet-dot-gr), -#GRNET NOC -# -#Permission to use, copy, modify, and/or distribute this software for any -#purpose with or without fee is hereby granted, provided that the above -#copyright notice and this permission notice appear in all copies. -# -#THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD -#TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND -#FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR -#CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -#DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS -#ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS -#SOFTWARE. -# -# Create your views here. +# vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab + +# Copyright © 2011-2014 Greek Research and Technology Network (GRNET S.A.) +# Copyright © 2011-2014 Leonidas Poulopoulos (@leopoul) +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD +# TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +# FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS +# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +# SOFTWARE. + import urllib2 import socket import json @@ -37,21 +35,21 @@ from django.template.loader import get_template, render_to_string from django.utils.translation import ugettext as _ from django.core.urlresolvers import reverse from django.contrib import messages -from flowspy.accounts.models import * +from accounts.models import * from ipaddr import * from django.contrib.auth import authenticate, login from django.forms.models import model_to_dict -from flowspy.flowspec.forms import * -from flowspy.flowspec.models import * -from flowspy.peers.models import * +from flowspec.forms import * +from flowspec.models import * +from peers.models import * from registration.models import RegistrationProfile from copy import deepcopy -from flowspy.utils.decorators import shib_required +from utils.decorators import shib_required from django.views.decorators.cache import never_cache from django.conf import settings diff --git a/flowspy/settings.py.dist b/flowspy/settings.py.dist new file mode 100644 index 0000000000000000000000000000000000000000..b91c35a6594db709456c6de3fe02227c1b558461 --- /dev/null +++ b/flowspy/settings.py.dist @@ -0,0 +1,306 @@ +# -*- coding: utf-8 -*- vim:fileencoding=utf-8: +# vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab +# Django settings for flowspy project. +# Copyright © 2011-2014 Greek Research and Technology Network (GRNET S.A.) +# Copyright © 2011-2014 Leonidas Poulopoulos (@leopoul) +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD +# TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +# FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS +# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +# SOFTWARE. + +import os +import djcelery +djcelery.setup_loader() +from celery.schedules import crontab + +DEBUG = False +TEMPLATE_DEBUG = DEBUG + +ADMINS = ( + ('AdminName', 'adminmail@admin.com'), +) +MANAGERS = ADMINS +here = lambda x: os.path.join(os.path.abspath(os.path.dirname(__file__)), x) + + +DATABASES = { + 'default': { + 'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'. + 'NAME': 'flowspy', # Or path to database file if using sqlite3. + 'USER': 'root', # Not used with sqlite3. + 'PASSWORD': 'ndo', # Not used with sqlite3. + 'HOST': '', # Set to empty string for localhost. Not used with sqlite3. + 'PORT': '', # Set to empty string for default. Not used with sqlite3. + } +} + +# Hosts/domain names that are valid for this site; required if DEBUG is False +# See https://docs.djangoproject.com/en/1.4/ref/settings/#allowed-hosts +ALLOWED_HOSTS = [] + +# Local time zone for this installation. Choices can be found here: +# http://en.wikipedia.org/wiki/List_of_tz_zones_by_name +# although not all choices may be available on all operating systems. +# In a Windows environment this must be set to your system time zone. +TIME_ZONE = 'Europe/Athens' + +# Language code for this installation. All choices can be found here: +# http://www.i18nguy.com/unicode/language-identifiers.html +_ = lambda s: s + +LANGUAGES = ( + ('el', _('Greek')), + ('en', _('English')), +) + +# Language code for this installation. All choices can be found here: +# http://www.i18nguy.com/unicode/language-identifiers.html +LANGUAGE_CODE = 'en' + +SITE_ID = 1 + +# If you set this to False, Django will make some optimizations so as not +# to load the internationalization machinery. +USE_I18N = True + +# If you set this to False, Django will not format dates, numbers and +# calendars according to the current locale. +USE_L10N = True + +# If you set this to False, Django will not use timezone-aware datetimes. +USE_TZ = True + +# Absolute filesystem path to the directory that will hold user-uploaded files. +# Example: "/home/media/media.lawrence.com/media/" +MEDIA_ROOT = '' + +# URL that handles the media served from MEDIA_ROOT. Make sure to use a +# trailing slash. +# Examples: "http://media.lawrence.com/media/", "http://example.com/media/" +MEDIA_URL = '' + +# Absolute path to the directory static files should be collected to. +# Don't put anything in this directory yourself; store your static files +# in apps' "static/" subdirectories and in STATICFILES_DIRS. +# Example: "/home/media/media.lawrence.com/static/" +STATIC_ROOT = '/home/leopoul/projects/flowspy/static' + +# URL prefix for static files. +# Example: "http://media.lawrence.com/static/" +STATIC_URL = 'https://fod.netdev2/grnet.gr/static/' + +# Additional locations of static files +STATICFILES_DIRS = ( + # Put strings here, like "/home/html/static" or "C:/www/django/static". + # Always use forward slashes, even on Windows. + # Don't forget to use absolute paths, not relative paths. +) + +# List of finder classes that know how to find static files in +# various locations. +STATICFILES_FINDERS = ( + 'django.contrib.staticfiles.finders.FileSystemFinder', + 'django.contrib.staticfiles.finders.AppDirectoriesFinder', +# 'django.contrib.staticfiles.finders.DefaultStorageFinder', +) + +# Make this unique, and don't share it with anybody. +SECRET_KEY = '<PLACE RANDOM CHARS HERE>eg. @@5234#$%345345^@#$%*()123^@12!&!()$JMNDF#$@(@#8FRNJWX_' + +# List of callables that know how to import templates from various sources. +TEMPLATE_LOADERS = ( + 'django.template.loaders.filesystem.Loader', + 'django.template.loaders.app_directories.Loader', +# 'django.template.loaders.eggs.Loader', +) + +TEMPLATE_CONTEXT_PROCESSORS = ( + "django.contrib.auth.context_processors.auth", + "django.core.context_processors.debug", + "django.core.context_processors.i18n", + "django.core.context_processors.media", + "django.contrib.messages.context_processors.messages", + "flowspy.context.global_vars.settings_vars", +) + +MIDDLEWARE_CLASSES = ( + 'django.middleware.cache.UpdateCacheMiddleware', + 'django.middleware.common.CommonMiddleware', + 'django.contrib.sessions.middleware.SessionMiddleware', + 'django.middleware.locale.LocaleMiddleware', + 'django.middleware.csrf.CsrfViewMiddleware', + 'django.contrib.auth.middleware.AuthenticationMiddleware', + 'django.contrib.messages.middleware.MessageMiddleware', + # Uncomment the next line for simple clickjacking protection: + # 'django.middleware.clickjacking.XFrameOptionsMiddleware', + 'django.middleware.cache.FetchFromCacheMiddleware', + 'django.contrib.flatpages.middleware.FlatpageFallbackMiddleware', +) + +ROOT_URLCONF = 'flowspy.urls' + +# Python dotted path to the WSGI application used by Django's runserver. +WSGI_APPLICATION = 'flowspy.wsgi.application' + +AUTHENTICATION_BACKENDS = ( + 'djangobackends.shibauthBackend.shibauthBackend', + 'django.contrib.auth.backends.ModelBackend', +) + +TEMPLATE_DIRS = ( + '/path/to/templates/', + # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates". + # Always use forward slashes, even on Windows. + # Don't forget to use absolute paths, not relative paths. +) + +INSTALLED_APPS = ( + 'monkey_patch', + 'django.contrib.auth', + 'django.contrib.contenttypes', + 'django.contrib.sessions', + 'django.contrib.sites', + 'django.contrib.messages', + 'django.contrib.staticfiles', + 'flowspec', + 'poller', + 'south', + # Uncomment the next line to enable the admin: + # 'django.contrib.admin', + # Uncomment the next line to enable admin documentation: + # 'django.contrib.admindocs', + 'djcelery', + 'peers', + 'registration', + 'accounts', + 'tinymce', +) + +# A sample logging configuration. The only tangible logging +# performed by this configuration is to send an email to +# the site admins on every HTTP 500 error when DEBUG=False. +# See http://docs.djangoproject.com/en/dev/topics/logging for +# more details on how to customize your logging configuration. +LOGGING = { + 'version': 1, + 'disable_existing_loggers': False, + 'filters': { + 'require_debug_false': { + '()': 'django.utils.log.RequireDebugFalse' + } + }, + 'handlers': { + 'mail_admins': { + 'level': 'ERROR', + 'filters': ['require_debug_false'], + 'class': 'django.utils.log.AdminEmailHandler' + } + }, + 'loggers': { + 'django.request': { + 'handlers': ['mail_admins'], + 'level': 'ERROR', + 'propagate': True, + }, + } +} + +LOGIN_URL = '/fod/welcome' + +CACHE_BACKEND = "memcached://127.0.0.1:11211/?timeout=3600" + +AUTH_PROFILE_MODULE = 'accounts.UserProfile' + +NETCONF_DEVICE = "" +NETCONF_USER = "" +NETCONF_PASS = "" +NETCONF_PORT = 830 + +ROUTES_FILTER = "<configuration><routing-options><flow/></routing-options></configuration>" +ROUTE_FILTER = "<configuration><routing-options><flow><route><name>%s</name></route></flow></routing-options></configuration>" +COMMIT_CONFIRMED_TIMEOUT = "120" +EXPIRATION_DAYS_OFFSET = 7 +COMMIT = True + +USE_X_FORWARDED_HOST = True + +BROKER_HOST = "localhost" +BROKER_PORT = 11300 +POLLS_TUBE = 'polls' + +BROKER_VHOST = "/" +CELERY_CONCURRENCY = 1 + +# List of modules to import when celery starts. +CELERY_IMPORTS = ("flowspec.tasks", ) + +SERVER_EMAIL = "Example FoD Service <noreply@example.com>" +EMAIL_SUBJECT_PREFIX = "[FoD] " + +LOG_FILE_LOCATION = here("log") + +EXPIRATION_NOTIFY_DAYS = 4 +PREFIX_LENGTH = 29 +POLL_SESSION_UPDATE = 60.0 + +BROKER_URL = "beanstalk://localhost:11300//" + +SHIB_AUTH_ENTITLEMENT = 'urn:mace' +SHIB_ADMIN_DOMAIN = 'grnet.gr' +SHIB_LOGOUT_URL = 'https://example.com/Shibboleth.sso/Logout' + +# BCC mail addresses +NOTIFY_ADMIN_MAILS = ["admin@admin.com"] + +UI_USER_THEN_ACTIONS = ['discard', 'rate-limit'] +UI_USER_PROTOCOLS = ['icmp', 'tcp', 'udp'] + +PROTECTED_SUBNETS = ['10.10.0.0/16'] + +CELERYBEAT_SCHEDULE = { + "every-day-sync": { + "task": "flowspec.tasks.check_sync", + "schedule": crontab(minute=01, hour=01), + "args": (), + }, + "notify-expired": { + "task": "flowspec.tasks.notify_expired", + "schedule": crontab(minute=01, hour=02), + "args": (), + }, +} +# whois +PRIMARY_WHOIS = 'whois.example.com' +ALTERNATE_WHOIS = 'whois.example.net' + +ACCOUNT_ACTIVATION_DAYS = 7 + +#Shibboleth attribute map +SHIB_USERNAME = ['HTTP_EPPN'] +SHIB_MAIL = ['mail', 'HTTP_MAIL', 'HTTP_SHIB_INETORGPERSON_MAIL'] +SHIB_FIRSTNAME = ['HTTP_SHIB_INETORGPERSON_GIVENNAME'] +SHIB_LASTNAME = ['HTTP_SHIB_PERSON_SURNAME'] +SHIB_ENTITLEMENT = ['HTTP_SHIB_EP_ENTITLEMENT'] + +TINYMCE_JS_URL = STATIC_URL +'js/tinymce/tiny_mce.js' + +TINYMCE_DEFAULT_CONFIG = { + 'extended_valid_elements' : 'iframe[src|width|height|name|align]', + 'plugins': "table,spellchecker,paste,searchreplace", + 'theme': "advanced", +} + +import _version +SW_VERSION = _version.VERSION + +LOG_FILE_LOCATION = here("../log") + + diff --git a/monkey_patch/forms.py b/monkey_patch/forms.py index 81a780be026f3402e93e63cb4ac5bad05468f4ac..d00e9c630fa89827b51f7231e2f56748694170cb 100644 --- a/monkey_patch/forms.py +++ b/monkey_patch/forms.py @@ -3,7 +3,7 @@ from django.core.validators import MaxLengthValidator from django.contrib.auth import forms as auth_forms from django import forms -from flowspy.monkey_patch import MAX_USERNAME_LENGTH +from monkey_patch import MAX_USERNAME_LENGTH def update_username_field(field): field.widget.attrs['maxlength'] = MAX_USERNAME_LENGTH() diff --git a/monkey_patch/models.py b/monkey_patch/models.py index 9cfa3670a580ce9fcb3af35d127e2927879d1ad9..9847b4f7ec4f83af42be78c5bc34fe264e343383 100644 --- a/monkey_patch/models.py +++ b/monkey_patch/models.py @@ -1,7 +1,7 @@ from django.utils.translation import ugettext as _ from django.db.models.signals import class_prepared from django.core.validators import MaxLengthValidator -from flowspy.monkey_patch import MAX_USERNAME_LENGTH +from monkey_patch import MAX_USERNAME_LENGTH def longer_username(sender, *args, **kwargs): if sender.__name__ == "User" and sender.__module__ == "django.contrib.auth.models": diff --git a/peers/admin.py b/peers/admin.py index 7c8856f41013789e29733ad08101084daecf0f5a..d9b2df189ebc88f8c06acec3b92dce25143f385a 100644 --- a/peers/admin.py +++ b/peers/admin.py @@ -1,26 +1,25 @@ -# # -*- coding: utf-8 -*- vim:fileencoding=utf-8: -#Copyright © 2011-2013 Greek Research and Technology Network (GRNET S.A.) +# vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab + +# Copyright © 2011-2014 Greek Research and Technology Network (GRNET S.A.) +# Copyright © 2011-2014 Leonidas Poulopoulos (@leopoul) +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD +# TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +# FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS +# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +# SOFTWARE. -#Developed by Leonidas Poulopoulos (leopoul-at-noc-dot-grnet-dot-gr), -#GRNET NOC -# -#Permission to use, copy, modify, and/or distribute this software for any -#purpose with or without fee is hereby granted, provided that the above -#copyright notice and this permission notice appear in all copies. -# -#THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD -#TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND -#FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR -#CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -#DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS -#ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS -#SOFTWARE. -# from django.contrib import admin -from flowspy.peers.models import * -from flowspy.flowspec.forms import * +from peers.models import * +from flowspec.forms import * from django.conf import settings from django.forms import ModelForm from django.contrib.admin.widgets import FilteredSelectMultiple diff --git a/peers/models.py b/peers/models.py index 386c0cfd26bd8316c7c35418b312eaf2f9135fab..6760d13be732251d21c4488f3d7c73099990be9b 100644 --- a/peers/models.py +++ b/peers/models.py @@ -1,22 +1,21 @@ -# # -*- coding: utf-8 -*- vim:fileencoding=utf-8: -#Copyright © 2011-2013 Greek Research and Technology Network (GRNET S.A.) +# vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab + +# Copyright © 2011-2014 Greek Research and Technology Network (GRNET S.A.) +# Copyright © 2011-2014 Leonidas Poulopoulos (@leopoul) +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD +# TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +# FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS +# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +# SOFTWARE. -#Developed by Leonidas Poulopoulos (leopoul-at-noc-dot-grnet-dot-gr), -#GRNET NOC -# -#Permission to use, copy, modify, and/or distribute this software for any -#purpose with or without fee is hereby granted, provided that the above -#copyright notice and this permission notice appear in all copies. -# -#THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD -#TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND -#FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR -#CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -#DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS -#ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS -#SOFTWARE. -# from django.db import models from utils.whois import * from django.contrib.auth.models import User diff --git a/peers/views.py b/peers/views.py index 6cb846432bf7bdae2ed7170f5ee03bdf05a5293f..7990644a462e3a894a1a0d5b17476b6fe7ee0884 100644 --- a/peers/views.py +++ b/peers/views.py @@ -1,20 +1,17 @@ -# # -*- coding: utf-8 -*- vim:fileencoding=utf-8: -#Copyright © 2011-2013 Greek Research and Technology Network (GRNET S.A.) +# vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab -#Developed by Leonidas Poulopoulos (leopoul-at-noc-dot-grnet-dot-gr), -#GRNET NOC -# -#Permission to use, copy, modify, and/or distribute this software for any -#purpose with or without fee is hereby granted, provided that the above -#copyright notice and this permission notice appear in all copies. -# -#THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD -#TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND -#FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR -#CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -#DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS -#ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS -#SOFTWARE. -# -# Create your views here. +# Copyright © 2011-2014 Greek Research and Technology Network (GRNET S.A.) +# Copyright © 2011-2014 Leonidas Poulopoulos (@leopoul) +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD +# TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +# FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS +# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +# SOFTWARE. diff --git a/poller/application.py b/poller/application.py index d71251a115eb7395f63aef6609df83f6e730459c..635dfd16d060df62d069a7e8744902f85002f5f6 100644 --- a/poller/application.py +++ b/poller/application.py @@ -1,22 +1,20 @@ -#!/usr/bin/python # -*- coding: utf-8 -*- vim:fileencoding=utf-8: -#Copyright © 2011-2013 Greek Research and Technology Network (GRNET S.A.) +# vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab -#Developed by Leonidas Poulopoulos (leopoul-at-noc-dot-grnet-dot-gr), -#GRNET NOC -# -#Permission to use, copy, modify, and/or distribute this software for any -#purpose with or without fee is hereby granted, provided that the above -#copyright notice and this permission notice appear in all copies. -# -#THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD -#TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND -#FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR -#CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -#DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS -#ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS -#SOFTWARE. -# +# Copyright © 2011-2014 Greek Research and Technology Network (GRNET S.A.) +# Copyright © 2011-2014 Leonidas Poulopoulos (@leopoul) +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD +# TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +# FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS +# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +# SOFTWARE. from gevent import monkey; monkey.patch_all() import os diff --git a/poller/urls.py b/poller/urls.py index 79691972cbdd92610aaa422d40cb5f2660c8b680..83054751bc8a0f0656df189f916e0dbe018fcfea 100644 --- a/poller/urls.py +++ b/poller/urls.py @@ -20,7 +20,7 @@ from django.conf.urls.defaults import * from django.conf import settings -urlpatterns = patterns('flowspy.poller.views', +urlpatterns = patterns('poller.views', ('^$', 'main'), url('^message/existing$', 'message_existing', name='fetch-existing'), url('^message/new$', 'message_new',name='fetch-new'), diff --git a/poller/views.py b/poller/views.py index aa5d12123b5d1cf155abb2f78deb7205eb2e80bf..3ae6d5e04915c75e4f7755a0c130458d3e97eb40 100644 --- a/poller/views.py +++ b/poller/views.py @@ -1,22 +1,21 @@ -# # -*- coding: utf-8 -*- vim:fileencoding=utf-8: -#Copyright © 2011-2013 Greek Research and Technology Network (GRNET S.A.) - -#Developed by Leonidas Poulopoulos (leopoul-at-noc-dot-grnet-dot-gr), -#GRNET NOC -# -#Permission to use, copy, modify, and/or distribute this software for any -#purpose with or without fee is hereby granted, provided that the above -#copyright notice and this permission notice appear in all copies. -# -#THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD -#TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND -#FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR -#CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -#DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS -#ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS -#SOFTWARE. -# +# vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab + +# Copyright © 2011-2014 Greek Research and Technology Network (GRNET S.A.) +# Copyright © 2011-2014 Leonidas Poulopoulos (@leopoul) +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD +# TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +# FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS +# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +# SOFTWARE. + from gevent import monkey monkey.patch_all() from gevent.pool import Pool @@ -108,6 +107,10 @@ class Msgs(object): self.user_cursor[user] = self.user_cache[user][-2]['id'] if len(self.user_cache[user]) > self.cache_size: self.user_cache[user] = self.user_cache[user][-self.cache_size:] + try: + assert(self.new_message_user_event[user]) + except: + self.new_message_user_event[user] = Event() self.new_message_user_event[user].set() self.new_message_user_event[user].clear() return json_response(msg) diff --git a/templates/500.html b/templates/500.html index 7d36bba54495fafce7aec4e3edfd823c6e31bee8..3db3dc866df6bd197864af8b9a8a2d96e69b5499 100644 --- a/templates/500.html +++ b/templates/500.html @@ -150,7 +150,7 @@ h3 { </head><body> <div id="main"> <div id="header"> - <a class="grnetlogo" href="https://netdev.grnet.gr/fod"> + <a class="grnetlogo" href="#"> <img class="logoimg" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKwAAABQCAYAAACEYZ66AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A /wD/oL2nkwAAAAlwSFlzAAAewgAAHsIBbtB1PgAAAAd0SU1FB9sLEhAJG35sOZwAACAASURBVHja 7b15eCRnde//OW9VdbekkUYjzWqPZ8bL2B7b4AXjDdvsexLWJFwuS7BHMoQkhJvcJcsNyS8heUgu @@ -386,7 +386,7 @@ Wbdx7IF16RVXXGEhmpeWvub/PNv/A0AT9Jar6VSkAAAAAElFTkSuQmCC"> </a> <div id="title"> - <a href="https://netdev.grnet.gr/fod">Firewall on Demand</a> + <a href="#">Firewall on Demand</a> </div> diff --git a/templates/welcome.html b/templates/welcome.html index d87fabc46cc25781ac16e617f4ba5cefedc1d87e..a8b8c0eda9ebead4b58fbce56c22f6e8566bda95 100644 --- a/templates/welcome.html +++ b/templates/welcome.html @@ -9,7 +9,7 @@ <iframe width="640" height="360" src="https://www.youtube.com/embed/VZy7DG8sjSk?rel=0" frameborder="0" allowfullscreen></iframe> </p> - <p>{% blocktrans %}Welcome to GRNET's FoD service.{% endblocktrans %}</p> + <p>{% blocktrans %}Welcome to GRNET's FoD service{{STATIC_URL}}fas.{% endblocktrans %}</p> </div> <div class="row-fluid"> <div class="span4 well"><h3>{% trans "What" %}?</h3><hr> diff --git a/utils/decorators.py b/utils/decorators.py index f6a3733d7964c6220f1b631650e4d2f6575f9dde..d57d6b85d3f6f21369ff7188b01174b77fd3b066 100644 --- a/utils/decorators.py +++ b/utils/decorators.py @@ -1,22 +1,21 @@ -# # -*- coding: utf-8 -*- vim:fileencoding=utf-8: -#Copyright © 2011-2013 Greek Research and Technology Network (GRNET S.A.) +# vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab + +# Copyright © 2011-2014 Greek Research and Technology Network (GRNET S.A.) +# Copyright © 2011-2014 Leonidas Poulopoulos (@leopoul) +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD +# TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +# FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS +# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +# SOFTWARE. -#Developed by Leonidas Poulopoulos (leopoul-at-noc-dot-grnet-dot-gr), -#GRNET NOC -# -#Permission to use, copy, modify, and/or distribute this software for any -#purpose with or without fee is hereby granted, provided that the above -#copyright notice and this permission notice appear in all copies. -# -#THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD -#TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND -#FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR -#CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -#DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS -#ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS -#SOFTWARE. -# from django.http import HttpResponseRedirect from django.core.urlresolvers import reverse diff --git a/utils/proxy.py b/utils/proxy.py index 6a46562094e76678585fc0af9a5b8d3fb7b06756..b4000cee0efe28aab7d865c86d056dd04af3ce75 100644 --- a/utils/proxy.py +++ b/utils/proxy.py @@ -1,22 +1,21 @@ -# # -*- coding: utf-8 -*- vim:fileencoding=utf-8: -#Copyright © 2011-2013 Greek Research and Technology Network (GRNET S.A.) +# vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab + +# Copyright © 2011-2014 Greek Research and Technology Network (GRNET S.A.) +# Copyright © 2011-2014 Leonidas Poulopoulos (@leopoul) +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD +# TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +# FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS +# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +# SOFTWARE. -#Developed by Leonidas Poulopoulos (leopoul-at-noc-dot-grnet-dot-gr), -#GRNET NOC -# -#Permission to use, copy, modify, and/or distribute this software for any -#purpose with or without fee is hereby granted, provided that the above -#copyright notice and this permission notice appear in all copies. -# -#THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD -#TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND -#FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR -#CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -#DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS -#ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS -#SOFTWARE. -# import nxpy as np from ncclient import manager from ncclient.transport.errors import AuthenticationError, SSHError @@ -45,17 +44,18 @@ def fod_unknown_host_cb(host, fingerprint): return True class Retriever(object): - def __init__(self, device=settings.NETCONF_DEVICE, username=settings.NETCONF_USER, password=settings.NETCONF_PASS, filter=settings.ROUTES_FILTER, route_name=None, xml=None): + def __init__(self, device=settings.NETCONF_DEVICE, username=settings.NETCONF_USER, password=settings.NETCONF_PASS, filter=settings.ROUTES_FILTER, port=settings.NETCONF_PORT, route_name=None, xml=None): self.device = device self.username = username self.password = password + self.port = port self.filter = filter self.xml = xml if route_name: self.filter = settings.ROUTE_FILTER%route_name def fetch_xml(self): - with manager.connect(host=self.device, port=830, username=self.username, password=self.password, unknown_host_cb=fod_unknown_host_cb) as m: + with manager.connect(host=self.device, port=self.port, username=self.username, password=self.password, unknown_host_cb=fod_unknown_host_cb) as m: xmlconfig = m.get_config(source='running', filter=('subtree',self.filter)).data_xml return xmlconfig @@ -84,12 +84,13 @@ class Retriever(object): return False class Applier(object): - def __init__(self, route_objects = [], route_object=None, device=settings.NETCONF_DEVICE, username=settings.NETCONF_USER, password=settings.NETCONF_PASS): + def __init__(self, route_objects = [], route_object=None, device=settings.NETCONF_DEVICE, username=settings.NETCONF_USER, password=settings.NETCONF_PASS, port=settings.NETCONF_PORT): self.route_object = route_object self.route_objects = route_objects self.device = device self.username = username self.password = password + self.port = port def to_xml(self, operation=None): logger.info("Operation: %s"%operation) @@ -269,4 +270,4 @@ def parsexml_(*args, **kwargs): kwargs['parser'] = ET.ETCompatXMLParser() doc = ET.parse(*args, **kwargs) return doc - \ No newline at end of file + diff --git a/utils/randomizer.py b/utils/randomizer.py index d19f4307b7f40dace06c15ea5c58e3e83e9d6ab2..22dcf9f6b36e06f06bc0aed3ec48d44364fdde16 100644 --- a/utils/randomizer.py +++ b/utils/randomizer.py @@ -1,22 +1,21 @@ -# # -*- coding: utf-8 -*- vim:fileencoding=utf-8: -#Copyright © 2011-2013 Greek Research and Technology Network (GRNET S.A.) +# vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab + +# Copyright © 2011-2014 Greek Research and Technology Network (GRNET S.A.) +# Copyright © 2011-2014 Leonidas Poulopoulos (@leopoul) +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD +# TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +# FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS +# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +# SOFTWARE. -#Developed by Leonidas Poulopoulos (leopoul-at-noc-dot-grnet-dot-gr), -#GRNET NOC -# -#Permission to use, copy, modify, and/or distribute this software for any -#purpose with or without fee is hereby granted, provided that the above -#copyright notice and this permission notice appear in all copies. -# -#THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD -#TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND -#FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR -#CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -#DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS -#ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS -#SOFTWARE. -# import string import random diff --git a/utils/whois.py b/utils/whois.py index b612492e08da96dfa43fd4fcd25fdaea7c43442d..e9edb91841bd9ab3f0fe75a9eca948613b0849cc 100644 --- a/utils/whois.py +++ b/utils/whois.py @@ -1,26 +1,25 @@ -# # -*- coding: utf-8 -*- vim:fileencoding=utf-8: -#Copyright © 2011-2013 Greek Research and Technology Network (GRNET S.A.) +# vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab + +# Copyright © 2011-2014 Greek Research and Technology Network (GRNET S.A.) +# Copyright © 2011-2014 Leonidas Poulopoulos (@leopoul) +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD +# TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +# FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS +# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +# SOFTWARE. -#Developed by Leonidas Poulopoulos (leopoul-at-noc-dot-grnet-dot-gr), -#GRNET NOC -# -#Permission to use, copy, modify, and/or distribute this software for any -#purpose with or without fee is hereby granted, provided that the above -#copyright notice and this permission notice appear in all copies. -# -#THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD -#TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND -#FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR -#CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -#DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS -#ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS -#SOFTWARE. -# import socket from ipaddr import * import re -import settings +from django.conf import settings def query(query, hostname, flags): s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)