diff --git a/APL1.2/SCR1.2/TP15/tp15-reponses.txt b/APL1.2/SCR1.2/TP15/tp15-reponses.txt index ad49775..52d7aa6 100644 --- a/APL1.2/SCR1.2/TP15/tp15-reponses.txt +++ b/APL1.2/SCR1.2/TP15/tp15-reponses.txt @@ -2,6 +2,20 @@ 2- dig -x 172.16.1.158 II 1- tshark -i -f "host and not arp and port domain -4- L'affichage de dif flags qr aa rd ra quand le flag qr est à 1, nous sommes dans un message dns qui est une réponse +3- Le serveur a répondu par le type A de ressources. C'est le type par défaut lorsqu'on ne précise pas le type désiré. +4- L'affichage de dif flags qr aa rd ra quand le flag qr est à 1, nous sommes dans un message dns qui est une réponse. LEs flags dans HEADER : qr : si mis à 1 -> ceci est une réponse. aa : cette réponse fait autorité. rd: recursion desired [si tu ne l'a pas dans le cache, lance une recherche]. ra : recursion available [oui, je peux lancer une recherche]. il y a aussi des nombres : QUESTION : QDCOUNT : le nombre de questions dans la section QUESTION (Nombre de RR demandés) +Answer : ANCOUNT : Le nombre de RRs dans la section Answer +Authority : NSCOUNT : Le nombre de RRs dans la section Authority +Additional : ARCOUNT : Le nombre de RRs dans la section ADDITIONAL 5 - par le flag aa -6 - ici un ttl de 1h a été communiqué pour le RR de type 1. Si le resolver grade cette donnée dans un cache, elle disparaitre du cadre au bout d'une heure \ No newline at end of file +6 - ici un ttl de 1h a été communiqué pour le RR de type 1. Si le resolver grade cette donnée dans un cache, elle disparaitre du cadre au bout d'une heure +7- on fait avec tcpdump + tcpdump -i < > host and not tcp and not port 67 and not port ntp and port domain + +8- dig arda.com + +III - + +3- dig -t NS vintage.com + dig @37.58.107.93 +Je peux utiliser une donnée fraêche sous révserve que j'arrive à obtenir l'adresse ip d'un serveur de nom qui a autorité sur le nom de domaine en question, vintage.com \ No newline at end of file diff --git a/APL2.1/TP9/playlist/Main.class b/APL2.1/TP9/playlist/Main.class new file mode 100644 index 0000000..ec06732 Binary files /dev/null and b/APL2.1/TP9/playlist/Main.class differ diff --git a/APL2.1/TP9/playlist/Main.java b/APL2.1/TP9/playlist/Main.java new file mode 100644 index 0000000..7b6b359 --- /dev/null +++ b/APL2.1/TP9/playlist/Main.java @@ -0,0 +1,7 @@ + public class Main + { + public static void main(String[] args) + { + Playlist pl = new Playlist(); + } + } diff --git a/APL2.1/TP9/playlist/Playlist.class b/APL2.1/TP9/playlist/Playlist.class new file mode 100644 index 0000000..4519dfc Binary files /dev/null and b/APL2.1/TP9/playlist/Playlist.class differ diff --git a/APL2.1/TP9/playlist/Playlist.java b/APL2.1/TP9/playlist/Playlist.java new file mode 100644 index 0000000..d5cd3c9 --- /dev/null +++ b/APL2.1/TP9/playlist/Playlist.java @@ -0,0 +1,28 @@ + import javax.swing.*; + import java.awt.*; + + public class Playlist + { + public Playlist() + { + JFrame fenetre = new JFrame(); + + fenetre.setSize(250, 500); + fenetre.setLocation(100, 100); + fenetre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + GridLayout gestionnaire = new GridLayout(10, 1); + fenetre.setLayout(gestionnaire); + + for (int i = 0; i < 10; i++) + { + JLabel lab = new JLabel("Morceau n°" + (i+1)); + PlaylistListener listener = new PlaylistListener(lab); + lab.addMouseListener(listener); + + fenetre.add(lab); + } + + fenetre.setVisible(true); + } + } diff --git a/APL2.1/TP9/playlist/PlaylistListener.class b/APL2.1/TP9/playlist/PlaylistListener.class new file mode 100644 index 0000000..f2eb131 Binary files /dev/null and b/APL2.1/TP9/playlist/PlaylistListener.class differ diff --git a/APL2.1/TP9/playlist/PlaylistListener.java b/APL2.1/TP9/playlist/PlaylistListener.java new file mode 100644 index 0000000..dc681ac --- /dev/null +++ b/APL2.1/TP9/playlist/PlaylistListener.java @@ -0,0 +1,63 @@ + import javax.swing.*; + import java.awt.*; + import java.awt.event.*; + + public class PlaylistListener implements MouseListener + { + private JLabel label; + private boolean actif; + + public PlaylistListener(JLabel label) + { + this.label = label; + label.setOpaque(true); + + actif = false; + } + + @Override + public void mouseClicked(MouseEvent evenement) // un bouton cliqué + { + actif = !actif; + + if (actif) + { + label.setBackground(Color.GRAY); + } + else + { + label.setBackground(Color.WHITE); + } + } + + @Override + public void mouseEntered(MouseEvent evenement) // debut du survol + { + label.setBackground(Color.CYAN); + } + + @Override + public void mouseExited(MouseEvent evenement) // fin du survol + { + if (actif) + { + label.setBackground(Color.GRAY); + } + else + { + label.setBackground(Color.WHITE); + } + } + + @Override + public void mousePressed(MouseEvent evenement) // un bouton appuyé + { + // Rien + } + + @Override + public void mouseReleased(MouseEvent evenement) // un bouton relâché + { + // Rien + } + }