Changeset 6312


Ignore:
Timestamp:
Sep 23, 2008, 10:11:52 PM (16 years ago)
Author:
RIck van der Zwet
Message:
  • trunk/exodus/sql/dnsserver.sql: allow DNS to be imported properly again
  • trunk/exodus/views.py: After new location redirect to node, which is logical option
  • trunk/exodus/wllogic.py: Have freeMasterIP based on the network selected
Location:
trunk/exodus
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/exodus/sql/dnsserver.sql

    r6215 r6312  
    1 INSERT INTO exodus_DnsServer VALUES ( 1, '172.17.8.68', 1);
    2 INSERT INTO exodus_DnsServer VALUES ( 2, '172.17.143.4', 1);
    3 INSERT INTO exodus_DnsServer VALUES ( 3, '172.20.128.98', 1);
    4 INSERT INTO exodus_DnsServer VALUES ( 4, '172.27.129.66', 1);
     1INSERT INTO exodus_DnsServer VALUES ( 1, '172.17.8.68', 'wleiden.net');
     2INSERT INTO exodus_DnsServer VALUES ( 2, '172.17.143.4', 'wzoeterwoude.net');
  • trunk/exodus/views.py

    r6288 r6312  
    1111
    1212from exodus.models import *
    13 from exodus.wllogic import freemasterip, newSSIDName, freeinterlinkip
     13from exodus.wllogic import freeMasterIP, newSSIDName, freeinterlinkip
    1414
    1515class AddLocationForm(forms.ModelForm):
     
    2222                if form.is_valid():
    2323                        form.save()
    24                         return HttpResponseRedirect(reverse('exodus.views.addNode'))
     24                        return HttpResponseRedirect(reverse('exodus.views.addNode') + "?location=" + request.POST['description'])
    2525        else:
    2626                form = AddLocationForm()
     
    3838                        # input a valid master ip into new_data
    3939                        instance  = form.save(commit=False)
    40                         instance.masterip = freemasterip()
     40                        instance.masterip = freeMasterIP(instance)
    4141                        instance.save()
    42                         return HttpResponseRedirect(reverse('nodelist'))
    43         else:
    44                 form = AddNodeForm()
     42                        return HttpResponseRedirect(reverse('node-detail', args=[instance.name]))
     43        else:
     44                if 'location' in request.GET:
     45                        newNode = Node()
     46                        newNode.location = Location.objects.get(description=request.GET['location'])
     47                        form = AddNodeForm(instance=newNode)
     48                else:
     49                        form = AddNodeForm()
    4550        return render_to_response('addnode.html', {'form': form })
    4651
     
    6873                        # input a valid master ip into new_data
    6974                        instance  = form.save(commit=False)
    70                         instance.masterip = freemasterip()
     75                        instance.masterip = freeMasterIP(instance)
    7176                        instance.save()
    7277                        return HttpResponseRedirect(reverse('nodelist'))
  • trunk/exodus/wllogic.py

    r6257 r6312  
    4545        return(showaddr(broadcast(address,netmask)))
    4646
    47 
    48 def freemasterip():
     47def freeMasterIP(node):
    4948        taken = {}
    5049
     
    5352                taken[addr] = 1
    5453
     54        #Currently claiming a /24 for every node
    5555        size = 24
    5656        numaddrs = 1 << (32 - size)
    5757
    58         i = 0xAC110001L # hardcoded 172.17.0.1 ## need to fix this
     58        #XXX: No out of bond checking done yet
     59        i = parseaddr(node.network.ipspacestart)
    5960        while taken.has_key(i):
    6061                i = i + numaddrs
Note: See TracChangeset for help on using the changeset viewer.