C'est une des choses qui m'agacent profondément dans le monde Windows. Les pare-feux personnels en tant qu'applications, en soi, c'est déjà une hérésie, parce qu'ils fonctionnent sur la machine qu'ils sont censés protéger. On a tous trouvé ça absurde quand c'est sorti, mais maintenant, les gens se sentent en sécurité parce qu'ils « ont fait les démarches nécessaires ».
L'application notepad.exe veut se connecter a 23.45.75.135 (vilainpirate.com), Autoriser ? Oui/Non Ce qui permet de protéger la passoire de tout ce qui est déjà rentré par l'intermédiaire de couveuses a virus style outlook, ie et compagnie de ne pas pouvoir sortir. Du coup le cheval de Troie rentré va avoir bien du mal à se rendre utile sans pouvoir téléphoner maison.
C'est hallucinant parce que :
1) Il vaut mieux empêcher le spyware de rentrer et, à tout le moins, le nettoyer plutôt que de mettre une couche par dessus quelque chose qui est percé en soi.
2) Qu'est-ce qui empêche un programme malfaisant installé en local de tripatouiller le pare-feu pour s'octroyer les droits dont il a besoin ?
Le VERP ou autre truc similaire est utile dans une mailing list par exemple. On a eu le cas, un jour, d'un type indésirable qui lisait le courrier d'un des abonnés.
D'une manière générale, dans ton cas, si ça n'a pas d'intérêt, c'est parce que le message de retour du mailer daemon contient l'adresse concernée dans le corps mais c'est loin d'être obligatoire en soi, et quand l'information est disponible, elle ne l'est jamais au même endroit.
Si c'est directement le nom de l'expéditeur que tu changes, tu peux identifier à coup sûr le message concerné avant même de recevoir le corps de la réponse ...
J'y connais pratiquement rien, mais visiblement, VERP, ce n'est qu'une manière de faire, et qui consiste à saler le return path de chaque mail avec un identifiant unique de manière à réassocier le message de retour avec l'exemplaire exact du courrier envoyé. Donc, à mon avis, ton 2) va avec ton 1).
Bravo pour avoir fait l'effort de chercher. C'est encore trop rare. Sinon, je conçois complètement que la syntaxe de sed est obscure quand on n'a pas l'habitude.
Côté format des expressions régulières sous Unix :
^ en début d'expression représente le début de la ligne. Ca permet de se référer à ce début plutôt qu'à n'importe quelle position. Juste après un crochet ouvrant, il complémente l'ensemble, sinon, c'est un caractère ordinaire. $ en fin d'expression représente la fin de la ligne. Sinon, c'est un caractère ordinaire.
La syntaxe de sed pour la commande s (substitute) est :
commande/motif à retrouver/motif de remplacement/options
Bien que n'importe quel caractère puisse servir de séparateur, le slash est le plus fréquement utilisé. Cependant, lorsqu'une expression contient elle aussi des slashes, il faut les alors échapper avec un contre-slash "\".
Ensuite, certains méta-caractères des expressions régulières doivent toujours êtres échappés aussi pour fonctionner, sinon, ils sont pris pour des caractères normaux. Pour d'autres, c'est le contraire.
Les opérateurs à échapper sont +,?,{,},(,) (ainsi que le slash si utilisé comme séparateur, et les chiffres, pour rappeler les motifs).
Les opérateurs à ne pas échapper sont *,^,[,],.
Les parenthèses, au niveau des regexps, servent à former des groupes sur lequels on peut appliquer des opérateurs (de l'algèbre classique, quoi), mais sed reconnaît également les groupes de premier niveau (ceux qui ne sont pas déjà eux-mêmes entre parenthèses), et permet de les rappeler ensuite avec \1, \2, \3, ...
De là :
^.*\/\([0-9]\{8\}\)\/.*$ correspond en fait à ^.*/([0-9]{8})/.*$, ce qui signifie "début de ligne, puis n'importe quel groupe de caractère puis un slash (échappé), puis un groupe de huit chiffrs exactement, puis un slash, puis n'importe quel groupe de caractère à nouveau, enfin une fin de ligne".
On met le groupe de huit chiffres entre parenthèses pour pouvoir le retrouver ensuite. Et on lui accole des slashes qui sont en fait ceux du chemin d'accès, de façon à retrouver nom un répertoire qui soit effectivement formés de huit chiffres, et non qui contienne huit chiffres.
Cette expression reconnaît la ligne entière, le motif de substition va donc la remplacer entièrement. Le \1 dans le deuxième champ indique que le nouveau motif est la date extraite uniquement. Tout le reste disparaît, donc.
L'option g signifie greedy. Elle sert à lever une ambigüité des expressions régulières. Quand plusieurs motifs identiques se suivent et que l'on utilise *, l'analyseur ne sait pas s'il faut s'arrêter au premier motif reconnu, ou au contraire tous les lire jusqu'à ce que ça ne corresponde plus. Par défaut, il se cantonne au premier cas, le mode greedy le fait opter pour le second.
Dans le cas de sed, c'est différent mais quand même similaire : sed stoppe l'opération une fois que la première substitution est faite. Avec g, il lira la ligne entière et substituera chaque fois que c'est possible.
La grosse arnaque serait qu'ils paient (encore) en licences. Comme çà, non seulement ça ne leur coûte rien mais en plus, plus lourdement ils sont condamnés et plus largement s'accroît leur monopole !
Pour paraphraser une autre personne, le français n'est visiblement pas la langue maternelle de l'auteur de cette entrée, c'est donc normal qu'il ait du mal à expliquer clairement son problème.
Surtout qu'ici, ce n'est pas trivial. Il s'agit bien de relier un port USB d'un côté et un port série de l'autre. Il a l'appareil idoine, il lui faut maintenant le piloter en particulier. Heureusement, ça fait partie des classes de périphériques standard, et ça se résout en deux lignes de shell.
Si tu branches sur ton décodeur un contrôleur série RS-232 USB, celui-ci va être reconnu comme tel par le noyau. Dès lors, tu n'as pas besoin d'aller piloter directement le bus USB (heureusement), mais simplement d'aller écrire dans le fichier spécial concerné, exactement comme pour un port série ordinaire :
Non, le halt, c'est justement ce qui va l'appeler. Ca ressemble plus à un SysRq+"e" ou "i", mais en fait c'est au-dessus. C'est écrit en clair, d'ailleurs : au moment de démonter les disques, il faut faire le ménage en virant tous les processus mais en faisant attention d'épargner les nettoyeurs eux-mêmes. Comme ce n'est (visiblement) pas trivial, il y a un outil dédié.
Pour ceux à qui la commande Linux killall manquerait sous Solaris, jetez un oeil du côté de pkill (et pgrep).
Un caractère à destination de quel périphérique ? Le port USB ressemble plus à une carte réseau qu'à un port série ...
Sous Linux, on utilise beaucoup la libusb. Si tu utilises une distribution basée sur RedHat, regarde si le package libusb-devel est installé. Il est livré avec toutes les documentations.
Oui, mais envoyer un e-mail ne coûte rien, envoyer un SMS, si.
Bon, je suis sûr que soit ils beneficient de tarifs de gros, soient ils passent par des pays où il est encore gratuit d'envoyer des SMS (à une époque, je m'envoyais mes logos persos en passant par la Suède).
Bon, je pense que ça ne va durer qu'un temps, parce que le téléphone mobile est beaucoup moins "anonyme" que ne l'est Internet, que ces petites bêtises ont un coût, et surtout parce qu'à terme, on pourra radiolocaliser ces géneurs (sauf plateformes téléinformatiques étrangères, bien sûr).
Tape runlevel pour voir si tu es bien resté en niveau cinq, mais à priori, il ne devrait pas y avoir de problème.
Si startx fonctionne, c'est que le pépin est plus subtil, mais la prochaine fois que tu démarres, loggue-toi et vérifie le contenu de /var/log/Xorg.0.log et vérifie les dernières lignes, spécialement celles qui commencent par (EE)<:B> (les erreurs).
Car dans ton cas de Camion+benne+arrimage, j'ai du mal à croire que Camion+benne se comporte toujours exactement comme un camion, comme une benne et comme l'arrimage.
Ah bon, et pourquoi ?
- Un camion-benne est un camion. Même chassis, même nécessité d'immatriculation, et il se conduit de la même façon par un conducteur de poids lourds (notion de compatibilité et d'interface, justement).
- Un camion-benne est une benne puisqu'il s'agit d'une benne traditionnelle fixée à un chassis. Un camion-benne qui reste au parking a toutes les propriétés d'une benne ordinaire.
Les quelques différences qui vont apparaître se gèrent alors avec la redéfinition des membres concernés. C'est tout l'intérêt de l'héritage objet, d'ailleurs : ne redéfinir que le diff. Dans l'exemple qui nous intéresse, "l'arrimage" était justement les modifications et ajouts nécessaires à la nouvelle classe (pas une troisième classe héritée).
D'une manière générale, si tu vois l'intérêt d'implémenter de plusieurs interfaces à la fois, alors il y a un intérêt à dériver de plusieurs classes à la fois également. Ca ne se voit pas beaucoup dans la Javadoc parce qu'il ont écrit cela de manière élégante, à l'aide de "*Model" et compagnie qui présentent toujours la chose comme si elle était complètement abstraite.
Génial. Si un logiciel plante, on ne peut même pas aller nettoyer la base de registre :-( Bon, en même temps, comme dirait pasBill, les utilisateurs normaux ne le font jamais ...
[^] # Re: Moi
Posté par Obsidian . En réponse au journal Les pare-feu. Évalué à 5.
"Defense in depth". Non mais je rêve !
[^] # Re: Moi
Posté par Obsidian . En réponse au journal Les pare-feu. Évalué à 5.
Tu arrives à rediriger le port 653984 en TCP/IP ? Faudra que tu me montres comment tu fais :-)
[^] # Re: Moi
Posté par Obsidian . En réponse au journal Les pare-feu. Évalué à 5.
L'application notepad.exe veut se connecter a 23.45.75.135 (vilainpirate.com), Autoriser ? Oui/Non Ce qui permet de protéger la passoire de tout ce qui est déjà rentré par l'intermédiaire de couveuses a virus style outlook, ie et compagnie de ne pas pouvoir sortir. Du coup le cheval de Troie rentré va avoir bien du mal à se rendre utile sans pouvoir téléphoner maison.
C'est hallucinant parce que :
1) Il vaut mieux empêcher le spyware de rentrer et, à tout le moins, le nettoyer plutôt que de mettre une couche par dessus quelque chose qui est percé en soi.
2) Qu'est-ce qui empêche un programme malfaisant installé en local de tripatouiller le pare-feu pour s'octroyer les droits dont il a besoin ?
[^] # Re: Hmm ... Verp ...
Posté par Obsidian . En réponse au message Comment gérer les bounces ?. Évalué à 2.
D'une manière générale, dans ton cas, si ça n'a pas d'intérêt, c'est parce que le message de retour du mailer daemon contient l'adresse concernée dans le corps mais c'est loin d'être obligatoire en soi, et quand l'information est disponible, elle ne l'est jamais au même endroit.
Si c'est directement le nom de l'expéditeur que tu changes, tu peux identifier à coup sûr le message concerné avant même de recevoir le corps de la réponse ...
# Hmm ... Verp ...
Posté par Obsidian . En réponse au message Comment gérer les bounces ?. Évalué à 2.
[^] # Re: Regexps ...
Posté par Obsidian . En réponse au message Extraire un bout de chaîne. Évalué à 2.
Quelques autres posts marrants (pour faire notamment autre chose que de la substitution) ici :
https://linuxfr.org//forums/26/6648.html
https://linuxfr.org//forums/26/23207.html
[^] # Re: Regexps ...
Posté par Obsidian . En réponse au message Extraire un bout de chaîne. Évalué à 3.
Côté format des expressions régulières sous Unix :
^ en début d'expression représente le début de la ligne. Ca permet de se référer à ce début plutôt qu'à n'importe quelle position. Juste après un crochet ouvrant, il complémente l'ensemble, sinon, c'est un caractère ordinaire.
$ en fin d'expression représente la fin de la ligne. Sinon, c'est un caractère ordinaire.
La syntaxe de sed pour la commande s (substitute) est :
commande/motif à retrouver/motif de remplacement/options
Bien que n'importe quel caractère puisse servir de séparateur, le slash est le plus fréquement utilisé. Cependant, lorsqu'une expression contient elle aussi des slashes, il faut les alors échapper avec un contre-slash "\".
Ensuite, certains méta-caractères des expressions régulières doivent toujours êtres échappés aussi pour fonctionner, sinon, ils sont pris pour des caractères normaux. Pour d'autres, c'est le contraire.
Les opérateurs à échapper sont +,?,{,},(,) (ainsi que le slash si utilisé comme séparateur, et les chiffres, pour rappeler les motifs).
Les opérateurs à ne pas échapper sont *,^,[,],.
Les parenthèses, au niveau des regexps, servent à former des groupes sur lequels on peut appliquer des opérateurs (de l'algèbre classique, quoi), mais sed reconnaît également les groupes de premier niveau (ceux qui ne sont pas déjà eux-mêmes entre parenthèses), et permet de les rappeler ensuite avec \1, \2, \3, ...
De là :
^.*\/\([0-9]\{8\}\)\/.*$ correspond en fait à ^.*/([0-9]{8})/.*$, ce qui signifie "début de ligne, puis n'importe quel groupe de caractère puis un slash (échappé), puis un groupe de huit chiffrs exactement, puis un slash, puis n'importe quel groupe de caractère à nouveau, enfin une fin de ligne".
On met le groupe de huit chiffres entre parenthèses pour pouvoir le retrouver ensuite. Et on lui accole des slashes qui sont en fait ceux du chemin d'accès, de façon à retrouver nom un répertoire qui soit effectivement formés de huit chiffres, et non qui contienne huit chiffres.
Cette expression reconnaît la ligne entière, le motif de substition va donc la remplacer entièrement. Le \1 dans le deuxième champ indique que le nouveau motif est la date extraite uniquement. Tout le reste disparaît, donc.
L'option g signifie greedy. Elle sert à lever une ambigüité des expressions régulières. Quand plusieurs motifs identiques se suivent et que l'on utilise *, l'analyseur ne sait pas s'il faut s'arrêter au premier motif reconnu, ou au contraire tous les lire jusqu'à ce que ça ne corresponde plus. Par défaut, il se cantonne au premier cas, le mode greedy le fait opter pour le second.
Dans le cas de sed, c'est différent mais quand même similaire : sed stoppe l'opération une fois que la première substitution est faite. Avec g, il lira la ligne entière et substituera chaque fois que c'est possible.
[^] # Re: Que vont-ils faire ?
Posté par Obsidian . En réponse à la dépêche La Commission inflige à Microsoft une amende de 899 millions € pour non-respect de la décision de mars 2004. Évalué à 4.
[^] # Re: Que vont-ils faire ?
Posté par Obsidian . En réponse à la dépêche La Commission inflige à Microsoft une amende de 899 millions € pour non-respect de la décision de mars 2004. Évalué à 9.
C'est magique, le monde du logiciel ...
[^] # Re: Pb date
Posté par Obsidian . En réponse à la dépêche La Commission inflige à Microsoft une amende de 899 millions € pour non-respect de la décision de mars 2004. Évalué à 5.
[^] # Re: Pb date
Posté par Obsidian . En réponse à la dépêche La Commission inflige à Microsoft une amende de 899 millions € pour non-respect de la décision de mars 2004. Évalué à 10.
# Regexps ...
Posté par Obsidian . En réponse au message Extraire un bout de chaîne. Évalué à 4.
Pour extraire une date formée d'exactement huit chiffres consécutifs, tu peux utiliser un truc du style :
date=`echo $fic | sed -e "s/^.*\/\([0-9]\{8\}\)\/.*$/\1/g`
Mais vérifie d'abord que tu n'as jamais plus de sept chiffres consécutifs autre part dans le chemin.
A bientôt.
[^] # Re: Whaou!
Posté par Obsidian . En réponse au journal Microsoft->mode=MODE_OPENSOURCE;. Évalué à 2.
Rien de nouveau sous le soleil, quoi.
On ne change pas un busness model qui marche, aussi immoral soit-il, d'ailleurs.
[^] # Re: Un peu d'exagération ne fait pas de mal
Posté par Obsidian . En réponse au message envoyer un caractère sur le port USB. Évalué à 2.
Surtout qu'ici, ce n'est pas trivial. Il s'agit bien de relier un port USB d'un côté et un port série de l'autre. Il a l'appareil idoine, il lui faut maintenant le piloter en particulier. Heureusement, ça fait partie des classes de périphériques standard, et ça se résout en deux lignes de shell.
[^] # Re: Point de depart
Posté par Obsidian . En réponse au message envoyer un caractère sur le port USB. Évalué à 2.
/dev/ttyUSB0
$ stty litout 9600 /dev/ttyUSB0
$ echo "Bonjour" > /dev/ttyUSB0
[^] # Re: un conseil
Posté par Obsidian . En réponse au journal Solaris pour les newbz'. Évalué à 3.
Non, le halt, c'est justement ce qui va l'appeler. Ca ressemble plus à un SysRq+"e" ou "i", mais en fait c'est au-dessus. C'est écrit en clair, d'ailleurs : au moment de démonter les disques, il faut faire le ménage en virant tous les processus mais en faisant attention d'épargner les nettoyeurs eux-mêmes. Comme ce n'est (visiblement) pas trivial, il y a un outil dédié.
Pour ceux à qui la commande Linux killall manquerait sous Solaris, jetez un oeil du côté de pkill (et pgrep).
[^] # Re: Point de depart
Posté par Obsidian . En réponse au message envoyer un caractère sur le port USB. Évalué à 3.
# Un caractère ?
Posté par Obsidian . En réponse au message envoyer un caractère sur le port USB. Évalué à 4.
Sous Linux, on utilise beaucoup la libusb. Si tu utilises une distribution basée sur RedHat, regarde si le package libusb-devel est installé. Il est livré avec toutes les documentations.
/usr/share/doc/libusb-devel-0.1.12/html/examples.html
/usr/share/doc/libusb-devel-0.1.12/html/api.html
[^] # Re: CONTACT !
Posté par Obsidian . En réponse au journal Au secours! Rendez moi ma tranquilité !. Évalué à 2.
[^] # Re: black list
Posté par Obsidian . En réponse au journal Au secours! Rendez moi ma tranquilité !. Évalué à 3.
Bon, je suis sûr que soit ils beneficient de tarifs de gros, soient ils passent par des pays où il est encore gratuit d'envoyer des SMS (à une époque, je m'envoyais mes logos persos en passant par la Suède).
Bon, je pense que ça ne va durer qu'un temps, parce que le téléphone mobile est beaucoup moins "anonyme" que ne l'est Internet, que ces petites bêtises ont un coût, et surtout parce qu'à terme, on pourra radiolocaliser ces géneurs (sauf plateformes téléinformatiques étrangères, bien sûr).
# Xorg plante
Posté par Obsidian . En réponse au message Demarrage en mode console. Évalué à 4.
Si startx fonctionne, c'est que le pépin est plus subtil, mais la prochaine fois que tu démarres, loggue-toi et vérifie le contenu de /var/log/Xorg.0.log et vérifie les dernières lignes, spécialement celles qui commencent par (EE)<:B> (les erreurs).
Bon courage.
[^] # Re: Ferme ton compte avant de partir...
Posté par Obsidian . En réponse au message Marre de linux pourri. Évalué à 2.
[^] # Re: héritage multiple en diamant
Posté par Obsidian . En réponse au message Autour de l'héritage multiple et des méthodes virtuelles.. Évalué à 2.
Ah bon, et pourquoi ?
- Un camion-benne est un camion. Même chassis, même nécessité d'immatriculation, et il se conduit de la même façon par un conducteur de poids lourds (notion de compatibilité et d'interface, justement).
- Un camion-benne est une benne puisqu'il s'agit d'une benne traditionnelle fixée à un chassis. Un camion-benne qui reste au parking a toutes les propriétés d'une benne ordinaire.
Les quelques différences qui vont apparaître se gèrent alors avec la redéfinition des membres concernés. C'est tout l'intérêt de l'héritage objet, d'ailleurs : ne redéfinir que le diff. Dans l'exemple qui nous intéresse, "l'arrimage" était justement les modifications et ajouts nécessaires à la nouvelle classe (pas une troisième classe héritée).
D'une manière générale, si tu vois l'intérêt d'implémenter de plusieurs interfaces à la fois, alors il y a un intérêt à dériver de plusieurs classes à la fois également. Ca ne se voit pas beaucoup dans la Javadoc parce qu'il ont écrit cela de manière élégante, à l'aide de "*Model" et compagnie qui présentent toujours la chose comme si elle était complètement abstraite.
[^] # Re: Ferme ton compte avant de partir...
Posté par Obsidian . En réponse au message Marre de linux pourri. Évalué à 3.
N'oublie pas de fermer ton compte avant de partir ! :-)
(attends-moi, j'arrive ->[]).
[^] # Re: Ouch !
Posté par Obsidian . En réponse au message Marre de linux pourri. Évalué à 2.
$ regedit
bash: regedit: command not found
Génial. Si un logiciel plante, on ne peut même pas aller nettoyer la base de registre :-( Bon, en même temps, comme dirait pasBill, les utilisateurs normaux ne le font jamais ...