#💽Programming Chat v2
1 messages · Page 44 of 1
depends
if you'd want to rely on pppd in the linux kernel which does most of the work for you no
otherwise yes
i found this https://crates.io/crates/ppproto
it doesnt implement ip though
The Rust programming language is blazingly fast and memory-efficient, with no runtime, garbage collector or OS. It catches a wide variety of bugs at compile time, thanks to its full memory- and thread-safety, and expressive type system.
no i still hate rust
oh 😭
also how am i going to run this btw
like
is it gonna be an executable sh program???
or
you just run the executable
a single program that dosent need any dependencies
yes
ok cool
there is also no configuration files to deal with
cuz i dont wanna run it and then it screams it wants libc6 or some shit
uhhhhhhhhhhhhh
could you add at least one so i can customize the authentication and port bindings
... you can already do that
yes
oh lmfao then thats fine
-ip=0.0.0.0 -port=443 -keystore=keystore.p12 -keystore_passphrase=CENSORED -pap_username=testuser -pap_passphrase=passwordmeow
this is what teh servers curerntly running with
the ip/port part is optional
also you probably dont need to know this but i plan to have this be ran by crontab at startup
like when i install this i intend not to ever login again to touch it
well then i'll probably need to do a lot of tweaking to the error logic
but the server itself (under normal circumstances) should never crash
just single connections
yeah i just wanna run it unattended and thats all
i tried to automate the ssh thing at startup and it sucked ass because crontab wont run screen for some reason
also systemd dosent exist for some reason
so i cant make it a service
oh yeah btw dont run this program in airplanes, nuclear facilities, or banks
let me guess because it has 10000000 sec vulnrabilites
no
oh
there isn't any remote execution vulns or even authetnication (aside from anything the jdk might have)
you just can't cause
that requires certification
these require ceritfication???
... yes
well im sure as hell not lmfao
why would you in hte first place
unless you have a 3d printer on a plane for some reason
Take a trip around the world with Yakko Warner.
All new episodes of “Animaniacs” are now streaming on Hulu.
WB Kids is the home of all of your favorite clips featuring characters from the Looney Tunes, Scooby-Doo, Tom and Jerry and More!
#WBKids #KidsCartoons
Animaniacs now streaming and available on HD digital!
MORE VIDEOS HERE ►http...
love rust*
die
エアレーションタンク
aeration tank?
is that the thing from aajimal crossing
i cant send the video its frrom :Sob:
who
nevrmind
fatas s
shakes
I WISH i could send bayachaos latest video here... unforuntately...
unnnnforuntately... unfortunaetlyr..
bad atp
ITS NOT MY FAULT THEY'RE JAPANESE AND JUSUT LIKE THAT OKAY
keep your horny furry out of here
STOP IT
:3
i hope to god hits image isnt bad
拷問
いいえ!!!!!!!!!!!!!!
I mean it looks fine?
Bayachao plush
thats a puppet
its actually blocking a few mercrh items i'd get banned if they were sent here 😭
so we should ban you anyways ok!
WHAST

NOW WITH CAST COMMENTARY??
Anyways I’m watching Berserk and then sleeping
watch bayachao streams instead
currently writing a NAT
quick make it november
huuh
you wouldn't get it
🤓
not you
this nat stuff ist ough
i bneed to wire sharl
bleleghe
@flint belfry can you set up a udp echo server
no
can you find one since im kinda taking a bath rn
linux?
yeah
do i need to port forward this
probably
udp
108.218.55.35 right
well idk what to tell you i ran the command you provided 😭
ummm hgold on
no its cause my ide froze
oh
okay here try this
please don't tell me you made that
i did
there is a shell file right next to it
oh
uhhh im on mobile can you right click the download button and press copy link and send it
i need to wget it
hold on let me just make it for java 8
okay it works locally at least
just need to make a routing table
udpecho udpecho.bat
kade@ubuntu-desktop-1:~/udpecho-1.0-SNAPSHOT/bin$ ./udpecho
ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation.
kade@ubuntu-desktop-1:~/udpecho-1.0-SNAPSHOT/bin$
which java do i install
8?
anytyhing above 8
what's the package name for 21
no idea
oh ok
if that doesnt work then heres the archive https://download.oracle.com/java/24/latest/jdk-24_linux-x64_bin.tar.gz
this is for JDK 24 (the latest)
JDK 24 will receive updates under these terms, until September 2025, when it will be superseded by JDK 25.
oh my god half a gig
yeah
yes
very nice
what does the server output
ill leave this running
uh
ade@ubuntu-desktop-1:~/udpecho-1.0-SNAPSHOT/bin$ ./udpecho
UDP Socket Addr : /0:0:0:0:0:0:0:0 : 3001
listening ...
RX UDP : /107.132.83.172 : 48424 ; [5]
TX UDP : /107.132.83.172 : 48424 ; [5]
oh okay neat
48424 is the port im using for UDP proxy
this is what the vpn sees
lol
NAT test #1
(this creates a kinda-routing table over the OS)
if the server responds with a UDP packet on the port we sent them one in 30 seconds, then it'll send that UDP packet to the sender
(otherwise discard)
btw darkmode dependant on the system
so you don't get flashbanged at night
I don't know why sites have a default like that
okay i think thats UDP done
back to TCP emulatiobn..
eeeeeeehhh
okay it looks like i need to finish working on TCP cause
ive broken apt
darkmode needs to be standardized on the system theme settings
ive seen very very few sites that actually see if your using dark mode or light mode on your system and only then use whatever based on what your systems on
or they could just have darkmode always on
which is the lazy way
🤓
pushed ,,
oh oops
i pushed my keystore
InternetProtocolControlConfigurationNonAcknowledgement
😨
hey this isnt a java thing
thats just the actual protocol name
you forgot Factory at the end
- Point-To-Point
- Network Control Protocols
- Internet Protocol Control Protocol
- Configure-Nak
- Internet Protocol Control Protocol
- Network Control Protocols
😈
hmm
am not sure if netcat is working right
wireshark is saying its working..
oh
thats probably why
there
a bit weird but it works
@flint belfry hey .....
do you wanna run another echo server for me.. ..
???
is mine not working anymore
this time for TCP
k ill do it when i
atp did you seriously
make a fucking git repository for this
simple ass server
for what
echo server
yeah
you said i could put it under breadexpertsgroup
whats the difference between me having it under myself or having it under breadexperts
well if its under you then you decide how the code is privatized or whatever
and copyrights go to you
ic
can the licensing be transferred to me if i ever change my mind which i probably wont
eeemmmmm
i dont know the answer to that
but if you want maintainer access to the repo we'll give it to you
keep it under breadexperts then
anyways ping me when the udp echo server is done
i mean tcp
whatever
stupid
die
well it has 4 warnings immediately cause
im using println
and we usually never do that
okay time to write tcp
@flint belfry
ok ill open it on 3002 give me a second
ok should be up
the TCP end of the vpn doesnt create a socket yet
and even if it did it'd fail cause my checksums aer wrong
does the udp server say anything interesting
like did any ips try to scan it
that's just me ,.......
no ones scanned it then lmfoa
i wonder what would happen if i opened a damn vulnerable linux vm with the lowest specs possible
@flint belfry okay so
i made a mistake with the TCP server
and its not acutally sending any data back
let me just fix it
If you think C is outdated, enjoy your bloated Electron apps running on 8GB RAM.
💬 96 🔁 110 ❤️ 2.8K 👁️ 97.4K
aera type post
fr
koay back to tcp development
let packet_bytes: [u8; _] = [
0x74, 0x65, 0x73, 0x74, 0x20, 0x6d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x20, 0x2e, 0x2e, 0x2e,
0x20, 0x74, 0x65, 0x73, 0x74, 0x20, 0x6d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x20, 0x2e, 0x2e,
0x2e, 0x20, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36,
0x37, 0x38, 0x39, 0x31, 0x30, 0x20, 0x2e, 0x2e,
0x2e, 0x20, 0x21, 0x40, 0x23, 0x24, 0x25, 0x5e,
0x26, 0x2a, 0x28, 0x29, 0x20, 0x2e, 0x2e, 0x2e,
0x20, 0x77, 0x69, 0x72, 0x65, 0x73, 0x68, 0x61,
0x72, 0x6b, 0x20, 0x68, 0x65, 0x6c, 0x6c, 0x6f,
0x0a
];
OK so
tcp echo KINDA works
but the peer doesn't like my responses rn
🤓
@flint belfry i ahve bad news
what
so it turns out
my TCP is actually functional, however
the echo server i sent you is broken again
:grrin:
oh my god i was expecting you to say the server actually needs dev net tun to work
thank god
ok just send me another echo server
no everything still is virtualized
i have to fake all of these packets
here
okay now i just gotta add FIN support
just ping me when the servs up
k in a bit
APES
hhoollyyy crap
our stack is actually good enough for http now
ooo interesting
it supports NTP too
thats why ive been getting those packets
so i assume you weren't able to get it online
bbbbbuttt i noticed the udp server is now throwing a port unreachable exception whcih means
i had to add another ICMP handler
and it works
whoops thats cause i was using the wrong port
corrected
I FELL ASLEEP 😭
yeah well
im this close to making tcp perfect
so /....
ok lemme do it rn
logTCP(PALE_PINKISH_RED, ppp.frame)
val connection = tcp[ppp.frame.sourcePort]
if (connection == null) {
if (ppp.frame.flags.size == 1 && ppp.frame.tcpFlags[0] == TCPFlag.SYN) {
try {
val socket = Socket(ppp.frame.destination, ppp.frame.destPort)
val newConnection = TCPConnection(socket)
tcp[ppp.frame.sourcePort] = newConnection
newConnection.ack = ppp.frame.sequence + 1
newConnection.lastAck = newConnection.ack
newConnection.seq = secureRandom.nextInt()
sendFrame(newConnection, TCPFlag.SYN, TCPFlag.ACK)
newConnection.seq++
} catch (_: SocketException) {
sendICMPUnreachable(1, ppp.frame)
}
} else sendReset()
} else {
val flags = mutableListOf<TCPFlag>()
if (ppp.frame.tcpFlags.contains(TCPFlag.ACK)) {
if (ppp.frame.data.isNotEmpty()) {
connection.ack += ppp.frame.data.size
connection.buffer.add(ppp.frame.data)
flags.add(TCPFlag.ACK)
}
if (connection.removeEntry) tcp.remove(ppp.frame.sourcePort)
} else sendReset()
if (ppp.frame.tcpFlags.contains(TCPFlag.PSH)) {
connection.buffer.removeIf {
connection.socket.outputStream.write(it)
true
}
}
if (ppp.frame.tcpFlags.contains(TCPFlag.FIN)) {
connection.ack += 1
flags.add(TCPFlag.ACK)
flags.add(TCPFlag.FIN)
connection.close()
}
if (flags.isNotEmpty()) sendFrame(connection, *flags.toTypedArray())
}
@spare quartz it's up
OHHHHHHHHHHHHHHHHHHHHHHH
OHHHH
THATS WHY ITS GIVING ME TRASH
for the longest time i thought i was using your server
i was ruunning netcat on googles HTTPS 😭
HOW THE FUCK DO YOU DO THAT AND MISTAKE IT FOR MY IP?? 😭😭😭
i told you to hit localnet
okay well
its always gonna resolve to my ip
i didnt rember
Ok
you're stuipd and dumb
ughgh
why arent you transmitting
OH IT WORKED
@flint belfry YAYY
I GOT TLS WORKING :3
okay umm
do you wanna try the server for yourself
and make some requests
hold on lemme try and downloaoding an image

im busy so nrn so feel free to keep working on it
also does this mean if i like
run discord through the vpn its gonna work
probably
for example
ok cool
I'll let you know when im ready and we should try running the server on the printer to make sure it even runs
did you ever fix the oplock error
idk call microsoft
what 😭
i dunno how to fixt hat!!
oh yeah but uh
since this project relies on zero native libraries....
it can run perfectly on any platform with a JVM and netwokrking
hmm i wonder
can i download apt packages..
holy shit it worrkkkeeedd
im such a good coder
ehehe :3
this project (where we had to do A LOT MORE THAN JUST VPN, such as virtualizing ip/tcp/udp/icmp to get around not having raw sockets) fits in just over 4,000 loc
maybe ill support that protocol next ...
the main server file that ties all the protocols together is about 681 lines
(or 24.8 kb)
@spare quartz ok send me the server
the vpn server
im going to try to run it on the pritner
okay let me package it
this'll require jdk 21
ehehe
gonna do something scary
do you need help
oh thats fine
uhh this is an arm cpu right?
this thing really dosent like wget
time to upload it via sftp
ok while thats uploading at a splendid fucking 200 kbps @spare quartz how do i compile jdk
is it just
a makefile or
id suggest not
this already has the binaries compiled for you
oh
if its compiled idgaf about compiling then
i hope your cpu is 64-bit btw
i usually have to compile source codes to install rpograms like this
what
you should've said something when you say the -aarch64_bin.tar.gz
I SAID IT WAS ARM
THAT IS ARM
ATP
ARM HAS 64-BIT CPUS IDIOT
o-kgiodfkgdf
lemme try and find a 32-bit build
try running that one anyways to see if it somehow works
the upload speeds are actually abysmal
idk why sftp is being so slow
if only wget actually worked like it should 
i think my wget is outdated or some shit since it just makes servers respond with 400 or something else
ill get this if the first one dosent work
heres a 32-bit ARM JDK 21 for you if that ver doesn't work
Don't make me write you a JVM.
theres no way this works
AWWW
but its actually possible and thats so funny
(this is the VPN rurnning in a VPN)
actually a lua jvm would probably be more preformant than what th efuck this printer is running
not true at all
hold on im gonna fix up the ip allocation for this to see if i can run the vpn in itself infinitely
https://cdn.meemkade.com/u/67942631-c542-41c1-8017-cf8ebfc9b8df.png @spare quartz ok here
the program is in bin right
the java program yeah
just run one file and see if it works
yes!! you!!! idiot!!!
die
just run anything in that folder
they'll all be the same executable type
yeah try the 32-bit ver next
ok
im gonna choke on my soda before you run it
time to wait another 5000 years before it uploads
dr epper :))))
no
mountain dew
idi ot.
send me aerocats or my game or ill put
idk
a virus in it thatll print... aerocats... 24/7
(idk how 3d printers work)
TWITTER YOU DAFT PUNK
THE PRINTER HAS A KILLSWITCH
IF I CANT FIND PLANE DRAGONS MYSELF ON THERE
ill override it like they do in the hacker movies
WHAT MAKES YOU THINK IM GONNA FIND KNOCKOFF PLANE DRAGON CAT THINGS
idk lol
and???
??
so what
0h
Fatass
3d gif dubstep
also did you make the package yet
WHAT PACKAGE
oh
its java it works everywhere
oh no thtas just for me
no i mean the vpn server
so i can run vpns in vpns in vpns
???
https://cdn.meemkade.com/u/d89c5de9-a724-4d48-be23-18995612c305.png WHAT HAVE YOU DONE
CHINESE JAVA
lol 😭
IS THERE A ENGLISH VERSION 😭
its probably to ur school with like 5 billion gazillion somebig number here missing assignments
okay wrote that email
read any of these
maybe your lang is set to that
uhh
wharts the command to check a variable again
im kinda multitasking rna nd i cant be bothered to find it
echo $<VAR>
also this thing is from china so i wouldnt be suprised if the os is on a china lang
yeah just chnage it to en_US
where possible
and try again
keep the encoding in there
java just gave me the help output so im assuming its working
YOU SAID YOU HAD TO FIX SHIT THOIUGH
ばか
omg
ILL DO IT IN A BIT
I CANT BE BOITHERED TO FIND IT
do you want it in tar or zip
IM WORKING ON A MACHINE THAT SPITS OUT PLASTICS INTO SHAPES
uhh
tar preferred
zip takes a long time for some reason
just run ./sstp
it'll probably give you an error about keystore though
https://cdn.meemkade.com/u/64ff93af-a2ac-4af5-9cc6-02790aec1b97.png yeah i expected this to happen
whats the command to set the path
discord please
oh
export PATH="$PATH:<path>"
or
export JAVA_HOME="<apth>"
im going to put the java folder in /usr/bin/java for my sanity
What
i had it in /tun/serve
idk /home or something 😭
no it sjust all the gcode gangsters overan it
whatever
export JAVA_HOME="/usr/bin/java/bin/"
will this work
sure
remove the ending /
last
just follow this i guess
yes
ok give me a bit then
the sstp client will complain about the cert but you can add a flag to ignore it
really nice that it got to the network interface though
can you run it with -ni_list?
yes but we dont use it because it crapped out when we tried
so we just hardwired it
aww
But do it congestion control
its fine
but idk why you would wanrt me to
keep going
since hardwire faster
k
no because thats not needed for testing rn
ill do the ssl and tls shit later since ik thats going to be really fun and im working on my printer but ill do it in like 20 mins
im going to be the only one on this thing 😭
ok well
me and my teacher
but thats it
it depends if she wants to use it or not
Me when I send a giant file really fast and rx can’t cope
idk if she cares that much about remote monitoring
aera i literally tested with downloading earlier 😭
200 bytes per packet isn't particularly great but it still handles thousands a second
it's fine
i dunno what the speed will look like on the printer thouogh
self signed keystores take 2 minutes at max to make
but take your time
and make sure you remember the passphrase you put on it
additionally the server WILL NOT run with authentication by default
add -pap_username=<name> -pap_passphrase=<passphrase> entries for user/pass auth
for you smh
lemme try
uhh
whats the username
it doesnt matter
iirc JDK comes with its own tls/ssl, idk about keygen though
oh my god it has it
the keytool is used for making the .p12 files
uhhh
if not, use your name iirc
idk if my schools fqdn is Bre#########.org
or if thats just what appears for the internet adapter on the windows pcs
i cant leaveit blank?
i think you can
ill just leave it blank since i dont want that to fuck up anything
i can change it if it does
export password is the keystore password right
yeah
oh wait is that the certificate
i dont think you need a password there
just the keystore
uhhh
yes
whats the destination keystore password
is it the one i used for export password
sure
wait
you just imported the keystore
you didnt need to do that
whatever just run the server with the p12 file
u,,
umm
im on step 5 of the overflow thing
do i stop??
do you have a p12 file
yaeh you can stop
./sstp -keystore=<keystore file> -keystore_passphrase=<passphrase you used for it>
is that the entire output
search for java
ima be honest
how 💀
ive only used htop
and top a few times
idk just use your eyes and scroll
try specifying JUST keystore passphrase
tri again
?
oh, try connecting to it with sstpc
sudo sstpc --log-level 400 --log-stderr <ADDRESS> --cert-warn noauth noccp noipv6 novj ipcp-max-configure 1 ipcp-restart 1 defaultroute
ummmmmmmmmmmmmmmmmmmmmmmmmmm
hold on
let me kill it and curl 443
i want to make sure whatever this printer is doing isnt using 443 already
ill reverse ssh it rq and see if i can connect
might take a sec
tcp correct
yes
cool
ok it should be being advertised by my reverse proxy on my localnet now
lets see if it works
for address what do i put
192.168.10.123:443 or just 192.168.10.123
ok
actually
can i specify the port somehow because the port on my localnet is different than 443
sure
how to
N0 WHAT IT WAS DOING SO WELL
?
tell me what the server status i
elab
also idk if this matters but both sides have different ip classes
printer has the 10.0.0.0 business class ip
my localnet is 192.168.
that's not relevant here, since each side negociates a unique ip
i just gotta choose an ip you're hopefully not using
uhhhhhhmmm
@flint belfry
fym jar
update this file within <sstp folder>/lib/
IPAddressProtocolOption(
inet4(192, 168, secureRandom.nextInt(), secureRandom.nextInt())
)
this'll cause confusion when referring to the printers self assigned ip rn
but it should let it boot
try doing something thru ppp0
no error???
like pinging google
uhh
whats the command to specify net adapter on ping again
-i?
check server console
oh
its red so i thought
💀
ok
uhhh
is -I the same thing for curl
i want to see if its the right ip
now try pinging something local to the printer but not accessible to you rq
i wanna see if that works
very nice
now i dont know how to set up curl to use a specific interface, but you can set up routing tables
uhhh
well all i wanted to use for curl was just to curl ifconfig.me
to see what my ip was
if it returned 108... it was my home ip
204 is the schools
seeing that i can touch shit on the other network from my side though i think its working
you either have to disconnect eth0/wlan0/whatever you're using, or set up this to use ppp0
uhhh
if i set my thing to use ppp0 will it still use eth0 for WAN
since if i use exclusively ppp0 i wont have internet
depends
well i will
you can configure which ips correspond to which interface
but the sstp thing needs to go through a diff adaptr
actually i have an idea
i have an openwrt vm that i have connected to a physical ethernet port
i wonder if i can tell it to use ppp0 as a wan
and then i have a rj45 port to the sstbp server
actually i think im gonna try that
whats the pakcage name of the sstp client again
sstp-client
im rdped into my vm right now so i hope this dosent kill it
uhhh
what do i put for 192.168.1.2