Compare commits
No commits in common. "f19fefe41d69a7900dd32ebfead01f64ad6cdfbd" and "eb01334c914834a2b310188e91a8aa2ca4c3f9e7" have entirely different histories.
f19fefe41d
...
eb01334c91
9
.gitignore
vendored
9
.gitignore
vendored
@ -24,15 +24,6 @@ code/no-op
|
|||||||
code/get-signal
|
code/get-signal
|
||||||
code/fifo-tx
|
code/fifo-tx
|
||||||
code/fifo-rx
|
code/fifo-rx
|
||||||
code/send-osc
|
|
||||||
code/listen-osc
|
|
||||||
code/plugiciel.so
|
code/plugiciel.so
|
||||||
code/appelant
|
code/appelant
|
||||||
code/flydraw.png
|
|
||||||
code/flydraw.gif
|
|
||||||
|
|
||||||
|
|
||||||
A
|
|
||||||
|
|
||||||
D
|
|
||||||
code/flydraw.gif
|
|
||||||
|
58
chap/OSC.tex
58
chap/OSC.tex
@ -19,25 +19,7 @@ allons voir maintenant.
|
|||||||
\section{oscdump \& oscsend}
|
\section{oscdump \& oscsend}
|
||||||
\index{oscdump}\index{oscsend}
|
\index{oscdump}\index{oscsend}
|
||||||
|
|
||||||
|
Ecouter :
|
||||||
\textbf{Envoyer :}
|
|
||||||
|
|
||||||
Pour envoyer, il faut bien définir une destination. Une fois
|
|
||||||
de plus, le couple IP adresse/port est utilisé. Ce sont les
|
|
||||||
deux premiers paramètres.
|
|
||||||
|
|
||||||
\begin{verbatim}
|
|
||||||
tth@debian:~$ oscsend localhost 1664 /tmp/kmem is 61 'meg, efface !'
|
|
||||||
tth@debian:~$
|
|
||||||
\end{verbatim}
|
|
||||||
|
|
||||||
La chaine \texttt{is} que vous voyez dans la ligne de commande
|
|
||||||
décrit le type des paramètres qui suivent~:
|
|
||||||
\texttt{i} est pour un integer et \texttt{s} pour une
|
|
||||||
chaine (notez les simples quotes pour passer les caractères
|
|
||||||
speciaux du shell).
|
|
||||||
|
|
||||||
\textbf{Ecouter :}
|
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
tth@debian:~$ oscdump 1664
|
tth@debian:~$ oscdump 1664
|
||||||
@ -46,45 +28,23 @@ tth@debian:~$ oscdump 1664
|
|||||||
tth@debian:~$
|
tth@debian:~$
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
% ------------------------------------------------
|
Envoyer :
|
||||||
|
|
||||||
|
\begin{verbatim}
|
||||||
|
tth@debian:~$ oscsend localhost 1664 /tmp/kmem is 61 'meg, efface !'
|
||||||
|
tth@debian:~$
|
||||||
|
\end{verbatim}
|
||||||
|
|
||||||
\section{Exemple de code}
|
\section{Exemple de code}
|
||||||
|
|
||||||
\textbf{Ecouter :}
|
Ecouter :
|
||||||
|
|
||||||
Attention, là, nous arrivons sur un domaine plus
|
|
||||||
hardu\footnote{Un beau néoligisme, n'est-il pas ?}.
|
|
||||||
En effet, la mécanique interne de \texttt{liblo}
|
|
||||||
utilise un thread d'écoute qui appelle des
|
|
||||||
\textsl{callbacks} préalablement "accrochés",
|
|
||||||
\textsl{hooked} en vrai langue.
|
|
||||||
|
|
||||||
\lstinputlisting[language=c]{code/listen-osc.c}
|
\lstinputlisting[language=c]{code/listen-osc.c}
|
||||||
|
|
||||||
\textbf{Envoyer :}
|
Envoyer :
|
||||||
|
|
||||||
Cette partie là est beaucoup plus simple.
|
|
||||||
|
|
||||||
\lstinputlisting[language=c]{code/send-osc.c}
|
\lstinputlisting[language=c]{code/send-osc.c}
|
||||||
|
|
||||||
J'avoue ne pas encore savoir ce que veut bien dire la
|
|
||||||
valeur de retour.
|
|
||||||
|
|
||||||
% ------------------------------------------------
|
|
||||||
\section{En Perl} \index{Perl}
|
|
||||||
|
|
||||||
\begin{verbatim}
|
|
||||||
use Net::OpenSoundControl::Client;
|
|
||||||
|
|
||||||
$client = Net::OpenSoundControl::Client->new(
|
|
||||||
Host => $target, Port => $port)
|
|
||||||
or die "Could not start client: $@\n";
|
|
||||||
|
|
||||||
$client->send(['/proc/kcore', 'i', 61, 's', "bla"]);
|
|
||||||
\end{verbatim}
|
|
||||||
|
|
||||||
% ------------------------------------------------
|
|
||||||
|
|
||||||
\section{Autres logiciels}
|
\section{Autres logiciels}
|
||||||
|
|
||||||
Beaucoup d'autres logiciels peuvent être controlés par OSC, ou
|
Beaucoup d'autres logiciels peuvent être controlés par OSC, ou
|
||||||
|
@ -6,42 +6,18 @@ Quelques notes en vrac sur divers logiciels\dots
|
|||||||
|
|
||||||
\section{Flydraw}\index{Flydraw}
|
\section{Flydraw}\index{Flydraw}
|
||||||
|
|
||||||
Comment faire des dessins en écrivant des lignes de codes ?
|
|
||||||
|
|
||||||
\begin{quote}
|
\begin{quote}
|
||||||
flydraw is a drawing tool based on an interpreter which parses a
|
flydraw is a drawing tool based on an interpreter which parses a
|
||||||
language featuring rich graphic primitives; it uses libgd to output
|
language featuring rich graphic primitives; it uses libgd to output
|
||||||
GIF, JPEG, or PNG\index{PNG} files.
|
GIF, JPEG, or PNG\index{PNG} files.
|
||||||
\end{quote}
|
\end{quote}
|
||||||
|
|
||||||
\lstinputlisting{code/dessiner.fly}
|
% ------------------------------------------------
|
||||||
|
|
||||||
Pour le moment, les résultats ne sont pas encourageants~:
|
|
||||||
\begin{verbatim}
|
|
||||||
tth@fubar:~/Documents/TetaTricks/code$ flydraw < dessiner.fly
|
|
||||||
bad_parms -100000
|
|
||||||
tth@fubar:~/Documents/TetaTricks/code$
|
|
||||||
\end{verbatim}
|
|
||||||
|
|
||||||
Mais en s'obstinant un peu au \textsl{cargocult}, il
|
|
||||||
s'avère que la documentation et le code semble ne sont
|
|
||||||
pas d'accord. Et les messages d'erreur trop
|
|
||||||
cryptiques pour moi. Donc, on y arrive.
|
|
||||||
|
|
||||||
\begin{figure}[h]
|
|
||||||
\begin{center}
|
|
||||||
\includegraphics[scale=0.75]{code/flydraw}
|
|
||||||
\caption{Flydraw}
|
|
||||||
\end{center}
|
|
||||||
\end{figure}
|
|
||||||
|
|
||||||
%====================================================================
|
|
||||||
|
|
||||||
\section{Povray}\index{POVray}
|
\section{Povray}\index{POVray}
|
||||||
|
|
||||||
\textbf{Persistence Of Vision} est un logiciel de raytracing qui
|
\textbf{Persistence Of Vision} est un logiciel de raytracing qui
|
||||||
existe depuis plus de trente ans. C'est un lointain descendant
|
existe depuis plus de trente ans.
|
||||||
de DKBtrace.
|
|
||||||
|
|
||||||
\subsection{Caméra}
|
\subsection{Caméra}
|
||||||
|
|
||||||
@ -93,25 +69,6 @@ la commande\texttt{tail} au début du script. Ensuite les deux clauses
|
|||||||
coordonnées X et Z, dans le repère POVray, qui n'est pas le même que
|
coordonnées X et Z, dans le repère POVray, qui n'est pas le même que
|
||||||
celui de Gnuplot.
|
celui de Gnuplot.
|
||||||
|
|
||||||
% ------------------------------------------------
|
|
||||||
|
|
||||||
\subsection{Trucs à voir}
|
|
||||||
|
|
||||||
\begin{verbatim}
|
|
||||||
|
|
||||||
#declare VIRGINIA =
|
|
||||||
transform{
|
|
||||||
matrix < 1, 1, 0,
|
|
||||||
0, 1, 0,
|
|
||||||
0, 0, 1,
|
|
||||||
0, 0, 0 >
|
|
||||||
}
|
|
||||||
|
|
||||||
box{0,1
|
|
||||||
transform{VIRGINIA}
|
|
||||||
}
|
|
||||||
\end{verbatim}
|
|
||||||
|
|
||||||
|
|
||||||
% ------------------------------------------------
|
% ------------------------------------------------
|
||||||
|
|
||||||
|
@ -185,12 +185,7 @@ C'est clairement aussi un outil dédié au voyeurisme à distance,
|
|||||||
puisque il permet de découvrir, avec plus ou moins de détails,
|
puisque il permet de découvrir, avec plus ou moins de détails,
|
||||||
les services exposés à l'extérieur par une machine distante.
|
les services exposés à l'extérieur par une machine distante.
|
||||||
|
|
||||||
Comment scanner un /24 pour y découvrir les machines ?
|
|
||||||
|
|
||||||
\begin{verbatim}
|
|
||||||
# nmap -sS 192.168.42.0/24
|
|
||||||
\end{verbatim}
|
|
||||||
\texttt{-sS} = TCP SYN scan.
|
|
||||||
|
|
||||||
% ==============================================================
|
% ==============================================================
|
||||||
\section{netcat}
|
\section{netcat}
|
||||||
|
@ -1,8 +1,7 @@
|
|||||||
\chapter{Le Shell}\index{shell}
|
\chapter{Le Shell}\index{shell}
|
||||||
\label{chap:shell}
|
\label{chap:shell}
|
||||||
|
|
||||||
Le \texttt{shell} est le coquillage qui isole le
|
Le \texttt{shell} est le coquillage qui isole le MC/P des yusers.
|
||||||
MC/P\footnote{Master Control Program} des yusers.
|
|
||||||
En gros, hein, je vais simplifier, et me limiter aux
|
En gros, hein, je vais simplifier, et me limiter aux
|
||||||
bricolages constructifs et/ou amusant. Il y aura du gore\index{gore}
|
bricolages constructifs et/ou amusant. Il y aura du gore\index{gore}
|
||||||
aussi.
|
aussi.
|
||||||
@ -13,7 +12,7 @@ choses en commun.
|
|||||||
|
|
||||||
Nous allons nous concentrer sur le \textsl{Bourne again shell}.
|
Nous allons nous concentrer sur le \textsl{Bourne again shell}.
|
||||||
aka \texttt{bash} qui est peut-être le plus répandu. Mais il
|
aka \texttt{bash} qui est peut-être le plus répandu. Mais il
|
||||||
en existe d'autres : sh, ksh, ash, zsh\dots
|
en exuste d'autres : sh, ksh, ash, zsh\dots
|
||||||
|
|
||||||
% ==============================================================
|
% ==============================================================
|
||||||
|
|
||||||
|
@ -14,11 +14,9 @@ other attacks. Additionally, OpenSSH provides secure tunneling
|
|||||||
capabilities and several authentication methods, and supports
|
capabilities and several authentication methods, and supports
|
||||||
all SSH protocol versions.}
|
all SSH protocol versions.}
|
||||||
|
|
||||||
% --------------------------------------------
|
|
||||||
|
|
||||||
\section{X11 forwarding}\index{X11}
|
\section{X11 forwarding}\index{X11}
|
||||||
|
|
||||||
Option \texttt{-X} et ses implications sur la sécurité.
|
|
||||||
|
|
||||||
\section{sshfs}
|
\section{sshfs}
|
||||||
\index{sshfs}
|
\index{sshfs}
|
||||||
@ -53,8 +51,5 @@ les bons droits sur \texttt{/dev/fuse*} et un
|
|||||||
La semaine prochaine, nous verrons le \textit{mapping} entre les
|
La semaine prochaine, nous verrons le \textit{mapping} entre les
|
||||||
UID\index{UID} locaux et distants.
|
UID\index{UID} locaux et distants.
|
||||||
|
|
||||||
% --------------------------------------------
|
|
||||||
|
|
||||||
\section{Port forwarding}
|
|
||||||
|
|
||||||
% https://tookmund.com/2021/10/ssh-port-forwarding
|
|
||||||
|
@ -333,12 +333,6 @@ Voilà, c'est tout pour le moment.
|
|||||||
|
|
||||||
%====================================================================
|
%====================================================================
|
||||||
|
|
||||||
\section{Airtime} \index{Airtime}
|
|
||||||
|
|
||||||
Cette partie est écrite pendant l'installation de Airtime
|
|
||||||
dans \textsf{Radio-Parasite} en octobre 2021.
|
|
||||||
|
|
||||||
%====================================================================
|
|
||||||
|
|
||||||
\section{libshout}\index{libshout}\label{libshout}
|
\section{libshout}\index{libshout}\label{libshout}
|
||||||
|
|
||||||
@ -355,8 +349,7 @@ data, and prevents bad data from getting to the icecast server.
|
|||||||
|
|
||||||
\lstinputlisting[language=c]{code/microcast.c}
|
\lstinputlisting[language=c]{code/microcast.c}
|
||||||
|
|
||||||
Mais il reste encore pas mal de chose importante à rajouter dans
|
|
||||||
ce logiciel : par exemple la partie encodage.
|
|
||||||
|
|
||||||
%====================================================================
|
%====================================================================
|
||||||
|
|
||||||
|
@ -75,12 +75,3 @@ of Code, the development continued and we are still looking for people with
|
|||||||
|
|
||||||
% --------------------------------------------------------------------
|
% --------------------------------------------------------------------
|
||||||
|
|
||||||
\section{Kinect} \index{Kinect}
|
|
||||||
|
|
||||||
Bon, voilà un nouveau gadget ;)
|
|
||||||
|
|
||||||
À priori, la partie caméra RGB est gérée classiquement par v4l2,
|
|
||||||
mais le coté spécifique, je ne sais pas qu'en faire...
|
|
||||||
|
|
||||||
% --------------------------------------------------------------------
|
|
||||||
|
|
||||||
|
@ -19,15 +19,6 @@ arguments: arguments.c Makefile
|
|||||||
no-op: no-op.c Makefile
|
no-op: no-op.c Makefile
|
||||||
gcc -Wall $< -o $@
|
gcc -Wall $< -o $@
|
||||||
|
|
||||||
#------------- OSC -----------------------
|
|
||||||
|
|
||||||
osc: send-osc listen-osc
|
|
||||||
|
|
||||||
send-osc: send-osc.c Makefile
|
|
||||||
gcc -Wall $< -llo -o $@
|
|
||||||
listen-osc: listen-osc.c Makefile
|
|
||||||
gcc -Wall $< -llo -o $@
|
|
||||||
|
|
||||||
#------------- IPC -----------------------
|
#------------- IPC -----------------------
|
||||||
|
|
||||||
get-signal: get-signal.c Makefile
|
get-signal: get-signal.c Makefile
|
||||||
@ -54,10 +45,3 @@ plugiciel.so: plugiciel.c plugiciel.h Makefile
|
|||||||
appelant: appelant.c plugiciel.h Makefile
|
appelant: appelant.c plugiciel.h Makefile
|
||||||
gcc -Wall $< -ldl -o $@
|
gcc -Wall $< -ldl -o $@
|
||||||
|
|
||||||
#------------- GRAPHISME --------------------
|
|
||||||
|
|
||||||
flydraw.png: dessiner.fly
|
|
||||||
flydraw < $<
|
|
||||||
convert flydraw.gif flydraw.png
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,10 +0,0 @@
|
|||||||
comment Juste un petit dessin...
|
|
||||||
|
|
||||||
new 640,480
|
|
||||||
|
|
||||||
line 10,10,300,300,red
|
|
||||||
line 12,10,302,300,red
|
|
||||||
line 14,10,304,300,red
|
|
||||||
|
|
||||||
output flydraw.gif
|
|
||||||
|
|
@ -1,15 +1 @@
|
|||||||
/* LISTEN OSC */
|
/* LISTEN OSC */
|
||||||
|
|
||||||
#include <stdio.h>
|
|
||||||
#include <lo/lo.h>
|
|
||||||
|
|
||||||
#define LOCAL_PORT "9000"
|
|
||||||
|
|
||||||
int main(int argc, char *argv[])
|
|
||||||
{
|
|
||||||
lo_server_thread st;
|
|
||||||
|
|
||||||
st = lo_server_thread_new(LOCAL_PORT, NULL);
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
@ -1,18 +1 @@
|
|||||||
/* SEND OSC */
|
/* SEND OSC */
|
||||||
|
|
||||||
#include <stdio.h>
|
|
||||||
#include <lo/lo.h>
|
|
||||||
|
|
||||||
#define REMOTE_HOST "localhost"
|
|
||||||
#define REMOTE_PORT "9000"
|
|
||||||
|
|
||||||
int main(int argc, char *argv[])
|
|
||||||
{
|
|
||||||
lo_address loana;
|
|
||||||
int foo;
|
|
||||||
|
|
||||||
loana = lo_address_new(REMOTE_HOST, REMOTE_PORT);
|
|
||||||
foo = lo_send(loana, "/dev/kmem", "is", 61, "meg, efface !");
|
|
||||||
fprintf(stderr, "foo %d\n", foo);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
1
main.tex
1
main.tex
@ -21,7 +21,6 @@
|
|||||||
\lstset{aboveskip=1em,belowskip=1em}
|
\lstset{aboveskip=1em,belowskip=1em}
|
||||||
|
|
||||||
\setcounter{tocdepth}{1}
|
\setcounter{tocdepth}{1}
|
||||||
\pagestyle{plain}
|
|
||||||
|
|
||||||
\usepackage{pifont} % caractères rigolos
|
\usepackage{pifont} % caractères rigolos
|
||||||
\usepackage{enumitem}
|
\usepackage{enumitem}
|
||||||
|
Loading…
Reference in New Issue
Block a user