Projet

Général

Profil

MajSendCert.py

Contournement du problème de fragmentation IKEv2 - Fabrice Barconnière, 15/01/2015 16:03

Télécharger (1,15 ko)

 
1
#!/usr/bin/python
2
# -*- coding: UTF-8 -*-
3
# Karim Ayari
4
# DSI - Rectorat de Lyon
5
# Remplace leftsendcert = always par leftsendcert = never pour tous les noeuds
6

    
7
import os
8
from time import strftime
9
from shutil import copy
10
from commands import getstatusoutput,getoutput
11

    
12
from arv.db.node import get_nodes
13
from arv.db.edge import get_connects
14
from arv.db.initialize import initialize_database, commit_database
15

    
16
### Initialisation de la base arv
17
initialize_database(create=False)
18
###
19

    
20
### Sauvegarde de la base
21
sqlite_database='/var/lib/arv/db/sphynxdb.sqlite'
22
db_backup='/root/sphynxdb.sqlite'+"."+strftime("%d%m%y_%H%M%S")
23
print "Sauvegarde de la base ARV dans "+db_backup+"..."
24
copy(sqlite_database,db_backup)
25
###
26

    
27
### à modifier selon le besoin
28
#nouvelle valeur
29
new_leftsendcert=u'never'
30
###
31

    
32
#on met à jour seulement si la valeur de leftsendcert est diffèrente
33
for node in get_nodes():
34
    for connect in get_connects():
35
        if node.id == connect.head_node_id and connect.leftsendcert != new_leftsendcert:
36
            connect.leftsendcert = new_leftsendcert
37
            print(""+node.name+u" - Mise à jour OK!")
38

    
39
#enregistre les modifications
40
commit_database()
41
###