#💽Programming Chat v2
1 messages · Page 48 of 1
Shakes
hey guys welcome back to my channel. today, we will be re-learning oop within roblox
(need tips on how i can make this better)
how to make it better? don't use oop
arm pit of despair
thats right! use oop
stop
just because you are using
a terrible language
wth
json.json
I just noticed that
LOL
whenever i copy files intellij likes to create a copy of the folder of the file i copied it frrom
she would love vibe coding
wait they're genius
this is for a cryptocurrency btw ☹️☹️
no cryptation without representation..
we should name it json.txt.json
I sold it
Lmao
new breadmod explosions
our system is also infinitely expansible, in line with everything else we do
10,000 samples, 100 radius:
we're also using a fibonacci lattice for evenly distributed points
How laggy is this update
not that much
Ok ill see if it runs in a vm 4 gb of ram and 1 cpu core without crashing 
contrast this with vanillas computation of rays which, although produces evenly separated rays as well, will produce a cubiod artifact at large radii (and is also limited to 16x16x16 areas, whereas our system is only limited by resolution of the precomputed vectors)
nuclear physics is very easy computationally as most of it is just probability, but
data input is a nightmare...
What is it
2 part system for activitypub/atprotocol by request; backend server for handling user authentication/server-server federation/storage, frontend server for handling requests via the browser, oauth token retrival...
both communicate via a socket negociated at startup
rn im currently doing data entry for a breadmod project though
Add nuclear physics to breadmod
yes that is what i am currently doing
take a look at this, might be good for your server-server data https://grpc.io/
I’ll probably just make my own systems in the form of NCPs
Immediate thought is
- establish SSL if requested
- transmit ProcedureRequest
- Contains an array of
- Name Length
- Name
- Required
- Parameter Length
- Parameters
- Contains an array of
- transmit ProcedureOK (or ProcedureBad if a Required procedure is not supported)
- transmit ProcedureCall
- ProcedureIndex
- Parameters
will probably also have a DatatypeRequest beforehand that establishes the length and name of each datatype…
every isotope and element apart of the u238 chain (exl sf/cd)
now to add mass-energy verification!!!!!!!
minor precision loss
but only during remainder computation
(need to make pow for bigdecimals)
can u add cocaine to bread mod
[01:37:08;546/WARN [Server thread/org.bread_experts_group.breadmod.BreadMod] 12865570903760639344132530
[01:37:08;546/WARN [Server thread/org.bread_experts_group.breadmod.BreadMod] 57134612170
4999.99999999997779553950700567877128132753907930906616669650876775587025634
oh wow hes actualyl doing it
I am doing it
lol
@spare quartz what's ur sstp server address
I wanna test the handshake
let me start it
107.132.83.172:443
oh crap
i had it pointing to localhost
let me set it to 0.0.0.0
there
try now
idk if it actually pinged your server or not
ah it did
illegal server name
gg
do I have to use javart.zip or smth?
or just no :443
pls send again
[/128.61.78.4:53029;443 @ 02:19:44;920] Server failure outside of operation; java.io.IOException: Communication terminated
at bread_experts_group.MainKt.main$lambda$3$lambda$2$scanDelimiter(Main.kt:105)
at bread_experts_group.MainKt.main$lambda$3(Main.kt:115)
at java.base/java.lang.VirtualThread.run(VirtualThread.java:329)
ok
Connection terminated. I'm sorry to interrupt you Elizabeth, if you still even remember that name. But I'm afraid you've been misinformed.
so....im prematurely closing?
violated the protocol
smh
im guessing im still hitting that same thing @spare quartz
lmfao I don't think the vibe code is working
guessing this means "end of stream"
yes
ok there you go
[/128.61.78.4:54703;443 @ 02:36:26;669] Server failure outside of operation; java.io.IOException: Communication terminated
at bread_experts_group.MainKt.main$lambda$3$lambda$2$scanDelimiter(Main.kt:105)
at bread_experts_group.MainKt.main$lambda$3(Main.kt:123)
at java.base/java.lang.VirtualThread.run(VirtualThread.java:329)
but you are failing somewhere else
failed in the same place
do you need a reminder on the structure of HTTP messages
same spot
maybe since sstp is more niche, the ai isn't as good with it
more like rust is bad
you got somewhere!!
Server failure outside of operation; bread_experts_group.util.ProtocolViolationException: No Content-Length
no
The sequel to "Codsworth tells an absolute banger"
your lang looks like codsworth
your lang looks like someone from the 1800s
nearly dead because they caught the flu
❌
what should the content-length even be
it says it in the sstp spec
Server failure outside of operation; bread_experts_group.util.ProtocolViolationException: HTTP Method was not "SSTP_DUPLEX_POST", got "POST"
sorry
[/128.61.78.4:54808;443 @ 02:46:27;270] < SSTP [20] CONTROL SSTP_MSG_CALL_ABORT, # ATTRIB: [1]
ATTRIB [12] SSTP_ATTRIB_STATUS_INFO : ATTRIBUTE: SSTP_ATTRIB_NO_ERROR, STATUS: ATTRIB_STATUS_NO_ERROR, # ATRB DATA: 0
[/128.61.78.4:54808;443 @ 02:46:27;270] Session ended (server failure); bread_experts_group.util.ProtocolViolationException: Version was not 0x10, got 0x0
at bread_experts_group.util.GeneralKt.protocolViolation(General.kt:56)
at bread_experts_group.protocol.sstp.message.SSTPMessage$Companion.read(SSTPMessage.kt:26)
at bread_experts_group.ThreadOperationKt.operation(ThreadOperation.kt:339)
at bread_experts_group.MainKt.main$lambda$3(Main.kt:138)
at java.base/java.lang.VirtualThread.run(VirtualThread.java:329)
read the sstp spec
rustbrain
it's not rust
yes
Beam parameters: 3.0MeV, 50mA
Radiation shielded Gopro Session is sent through electron beam irradiator. Looking at calcite samples as they pass under the beam. GoPro is enclosed in a 3/8" thick lead pig with a 1/2" thick, 50% lead glass window. Additionally there is a 1/4" thick lead plate above the camera box to provide shielding from direct i...
same thing?
stop sending 0
[/128.61.78.4:54897;443 @ 02:52:32;560] < SSTP [20] CONTROL SSTP_MSG_CALL_ABORT, # ATTRIB: [1]
ATTRIB [12] SSTP_ATTRIB_STATUS_INFO : ATTRIBUTE: SSTP_ATTRIB_NO_ERROR, STATUS: ATTRIB_STATUS_NO_ERROR, # ATRB DATA: 0
[/128.61.78.4:54897;443 @ 02:52:32;560] Session ended (server failure); java.lang.IllegalArgumentException: len < 0
at java.base/java.io.InputStream.readNBytes(InputStream.java:399)
at bread_experts_group.protocol.sstp.message.SSTPMessage$Companion.read(SSTPMessage.kt:30)
at bread_experts_group.ThreadOperationKt.operation(ThreadOperation.kt:339)
at bread_experts_group.MainKt.main$lambda$3(Main.kt:138)
at java.base/java.lang.VirtualThread.run(VirtualThread.java:329)
[/128.61.78.4:54898;443 @ 02:52:42;029] < SSTP [20] CONTROL SSTP_MSG_CALL_ABORT, # ATTRIB: [1]
ATTRIB [12] SSTP_ATTRIB_STATUS_INFO : ATTRIBUTE: SSTP_ATTRIB_NO_ERROR, STATUS: ATTRIB_STATUS_NO_ERROR, # ATRB DATA: 0
[/128.61.78.4:54898;443 @ 02:52:42;029] Session ended (server failure); bread_experts_group.util.ProtocolViolationException: Version was not 0x10, got 0x1
at bread_experts_group.util.GeneralKt.protocolViolation(General.kt:56)
at bread_experts_group.protocol.sstp.message.SSTPMessage$Companion.read(SSTPMessage.kt:26)
at bread_experts_group.ThreadOperationKt.operation(ThreadOperation.kt:339)
at bread_experts_group.MainKt.main$lambda$3(Main.kt:138)
at java.base/java.lang.VirtualThread.run(VirtualThread.java:329)
[/128.61.78.4:54901;443 @ 02:52:59;553] < SSTP [20] CONTROL SSTP_MSG_CALL_ABORT, # ATTRIB: [1]
ATTRIB [12] SSTP_ATTRIB_STATUS_INFO : ATTRIBUTE: SSTP_ATTRIB_NO_ERROR, STATUS: ATTRIB_STATUS_NO_ERROR, # ATRB DATA: 0
[/128.61.78.4:54901;443 @ 02:52:59;553] Session ended (server failure); bread_experts_group.util.ProtocolViolationException: Version was not 0x10, got 0x0
at bread_experts_group.util.GeneralKt.protocolViolation(General.kt:56)
at bread_experts_group.protocol.sstp.message.SSTPMessage$Companion.read(SSTPMessage.kt:26)
at bread_experts_group.ThreadOperationKt.operation(ThreadOperation.kt:339)
at bread_experts_group.MainKt.main$lambda$3(Main.kt:138)
at java.base/java.lang.VirtualThread.run(VirtualThread.java:329)
r u sure ur reading it right
... yes
what
idk if this vibe coding thing works
at least not for smth like this
maybe for something like a crappy web app
ask it to build you a 3d racing game with webgl next time
naw
should I try it in like idk kotlin
atp congrats on the facereveal
thats you bub
my lifeline and blood isnt soda unlike you
Telemarketer called an elevator And tried to sell a vacation time share. I happened to be in the elevator when it happened.
false
lmao the kotlin impl dont even do nothin
the server was off btw
ive been playing scp sl and doiing furry art
yeah next time ask.
might work for doing frontend/backend web dev or like other stuff where there's a ton of code already out there for the ai to leech off of
this is why i have job security
idk tbh it might be able to handle making an smtp client/server deal
cause there's a ton of that out there
ok but the military isn't gonna ask you to make an sstp server or whatever
they're gonna tell you to like idfk
write c/c++
nah
ive written like
dozens of other protocols
but like the military isnt gonna have you doing that
in c/c++
in ada*
doubt
I'd be willing to bet that like
the F-22 and F-35 have a codebase of like
95% c/c++ and 5% ada
ada is probably used for like just the firmware on the sensors
and the actual fighter jet stuff is in c/c++
and like
they're pretty much the same sensors
who needs new ada code...
probably not those
@spare quartz could the nmap thing failing be due to it opening multiple connections or pings
i dont think nmap runs it all in one connection
and it could explain why only one host pung back the other day from the entire subnet scan
assuming that could fix it yeah
real...
what would it take or would there be any issues with multithreading
i dunno
you heard it here folks, reddit said dead lang that you'll have to buy $3000 license for in 10 years
do it then ig lol
on ONE condition
if theres nothing to work on the sstp server right now i guess thats something we could try
i am not buying you more (the name) games
i already paid you
smh
and im not looking for art
IM KDIDINg
TRANSLATE PLEASE
its a manga for $5.33..
@spare quartz LMFAO
no
.
ugh now i wanna support a FOIA for the army secure os
besides i plan to supersede it AND kotlin with a programming lang by beg
yes
just b normal
c/c++ for embedded
java (or kotlin if you’re allowed to be hip and cool) for everything else
wrong
bread experts group breadcrumbs
1 star
“breadcrumbs” cause it’ll never be a real loaf like c, c++, and java
no you idiot.
a breadcrumb is a single file of the Breadcrumb Microcode format comprising a loaf .
Perpetually half-baked language
rust:
nah
ada is more baked than rust will ever be tho..
Ada is stale at this point
nope
bread been left out too long
now the only people that use it are some delulsionals and like 2 old guys that were teens when it was made
i found the post for you!
i sent that sarcastically
you CAN vibe code if you want since i am not you
but i personally just think its a waste of time
the fact that it cant send a packet for a basic network protocol says a lot imo
the fact that I only took like 30 minutes to get to where I did says a lot too
it should've taken you 5
nah if I wrote it by hand it’d take me longer than 5
it shouldnt
you fumbled so much sending an http request meanwhile this is all the server is gonna do
well I also think had I written it by hand then there wouldn’t have been basically any fumbling
@spare quartz add nuclear physics to tetris, that is all I have to say
which would reduce the time to send a successful packet
i do not do insane requests just for the heck of it
the thing I didn’t like was that the AI got stuck and I didn’t have enough knowledge from having written the code myself to help it
will be honest though ai is really useful for filling gaps in knowledge when working fast
the why are you adding it to minecraft(ok I depart now)
because its an easy visualization platform
i made many small channels of messages just for determining things like "what is used inside an ip packet for calculating checksum"
i check what it says...
and wireshark confirms it
I find it incredibly useful as an advanced search engine and information aggregator
at the end of the day that is* what it is
just a search engine with associations of data baked in for you
i really do wonder what the actual usecase of ai art is
aside from cost cutting
just seems like a fad tool
yeah
anyways if I was to write sstp myself it may take shorter cause I’d understand the code more
but also I probably wouldn’t pre-read the protocol and just figure stuff out on the fly
so it’d probably take longer lol
well thats what i did
it took me a few days to get something working and then the remainder of time was just adding modern support and making my past code better
like idk if I could do the handshake in 5 minutes
5 minutes is probably the SSTP_POST whatever request
that depends on what you consider the handshake
setting up HTTPS: 5 minutes, 99% of that would be figuring out SSL
setting up SSTP CONNECT REQUEST: maybe an hour
setting up NCPs: hours to days
os-level stuff: hours to days...
HTTPS is ez, just grab native_tls and configure it to use your cert
which is why it'd take 99% of that 5 minutes
the remainder of time is just typing out the message and passing it to your out stream
anyways
let me push my breadmod changes and get started on @flint belfry request
IM TWEAKING
?
At least I dont have to build TLS myself
keyboard
didnt have to on the JVM either
(((Ada)))
okay but tis fun
mmm no
yes
if it wasn’t tls then sure
buuuut you mess up tls and next thing you know I get your password with wireshark
not true
its incredibly incredibly incredibly difficult to get such a problem
you'd have to do a higher order level of fucking up such as mixing your file stream of private key/public key
and theres no possibility of ROP/buffer over/underflow either
or not properly implementing your encryption protocol(s)
in every case that'd just cause the other end to see malformed data
again, you'd need to do a higher order level of fucking up
well an improper implementation could also allow timing or side channel attacks
thats a different problem, and the window of attack varies quite a lot
also depends on the environment
timings attacks dont matter most of the time over-the-wire, but do matter locally
im not doubting that, but most of the time the window is small enough to ignore
theres a lot of variables that go into play
And TLS has more serious implications when you mess it up
huh
one of the computers on kades school tried sending a GET request to his printer
10.98.32.58:50294;443
lol
what time
14:57:18;561
12h pls
thats in UTC
edt
10:57 AM x, Eastern Time (ET)
day?
either today or yesterday
at 10 am right
yeah
do youu know what computer that ip is for ..
ill look into that
the .32 subnet is the technical design room aka where the printer is
at least it should be that room
or the whole building (we have multiple buildings )
hold on im going to nmap it real quick and find out what os it is
no students should be at my school today
so this is weird
@spare quartz are you attached to the sstp screen session rn or doing something because i cant connect to it
connection still failed
is the server even on
nvm you killed the screen session
let me restart it
lmfao i see you tried to use wget
you have to transfer files the annoying way 😭
yes that was a while ago
ip pinged so its a computer thats sitting on the network
and hopefully not a different computer that stole its ip via dhcp which i doubt
annd the server killed itself
this is an intentional error
if you see NotImplementedError its just something i havent gotten to adding yet
can i have a working version of the server
i need to see what that ip is before its gone
idk how long dhcp leases last on the network
no
because i havent gotten around to adding that specific feature yet... gimme a second
it worked before but ok 😭
no it didnt
you just hadnt reached that specific edge case
#13..
hmm
how am i gonna fake this...
tried curling the ip and it returned a 404 error page and only school managed windows computers have port 80 and a webserver on for some reason
so its a school computer??
at least its a organization managed computer
who tf was on that computer 😭
i really really really wonder how you got this error?
i know you cant actually answer that
but theoretically it shouldnt be reachable under normal circumstnaces
i mean all i can tell you is that i tried to nmap intense scan and all udp ports on the ip

no im doing this from my ubuntu vpn with the sstp client thingy
im not installing nmap on the printer ive complied enough programs without a package manager as is
cmd
what command did you use
nmap -p 1-65535 -T4 -A -v -e ppp0 10.98.32.58
do it on only one port on the new server version initially and lmk if you see TIMESTAMP
might make a mistake on checksumming..
timestamp packet done..
now to impl..
@flint belfry
pls update jar in libs with this
and test again with these paramters
eeeeeeeerrrrrrrr
(that might produce a tiny issue with nmap as im not sending a reply, but successful parse is good enough for me)
(may also cause NCP failure, whatever... good parse is good)
knwe it
this is a good parse though
Originate timestamp is the time the sender last touched the message before sending it.
Receive timestamp is the time the echoer first touched it on receipt.
Transmit timestamp is the time the echoer last touched the message on sending it.
@flint belfry
im not exactly sure what this means but it dosent look good and isnt normal for nmap
pls send server output so i can see if its logging it right
none of its normal cause im faking 90% of the procedure and havent added multithreading yet
@flint belfry progress ?
oh uh
gholf on im drawing furyr dart
this is constant on nmap
next draw Belelelelelelele
HOW
im not that good at art
outline:
- NCP work
- stability across SSTPC configuration options
- multitherad TCP using virtual thread method UDP uses
im still not sure what this pc is
but its most likely some computer in the same room as the printer
i dont think its a big deal considering it was a get request but like
im not taking chances considering the fact someone tried to run a bruteforce attack
actually it says 38-215 so building 38 room 215
ill find out where that is later and figure out if i can pin down the computer
good on the it department for making all managed computers have their hostname include the room information
hers is probably down since it runs on her pc but if you have a reason i could let you test on mine
uhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
fn main() {
let config = rustls::ClientConfig::builder()
.dangerous()
.with_custom_certificate_verifier(SkipVerification::new())
.with_no_client_auth();
let mut conn = rustls::ClientConnection::new(std::sync::Arc::new(config), "javart.zip".try_into().expect("Failed to get server name")).expect("Failed to make connection");
let mut sock = std::net::TcpStream::connect("javart.zip:443").expect("Failed to establish socket");
let mut tls = rustls::Stream::new(&mut conn, &mut sock);
tls.write_all(b"SSTP_DUPLEX_POST /sra_{BA195980-CD49-458b-9E23-C84EE0ADCD75}/ HTTP/1.1\r\nHost: javart.zip\r\nContent-Length: 18446744073709551615\r\nSSTPCORRELATIONID:48abc\r\n\r\n").unwrap();
let mut resp = Vec::new();
tls.read_to_end(&mut resp).unwrap();
println!("{resp:?}");
sock.shutdown(std::net::Shutdown::Both).unwrap();
}
like this is all my code
ok i cannot be bothered to give you ssh access and teach you how to use reverse ssh so im just going to
a bit poorly formatted but
open a port on my router
but im only doing it for a short time since itll be exposed to the internet
how long do you need it open for
uhh you can try making it smth else
ok
im guessing your domain name is meemkade.xyz
ok its open on port 9000 test rn im not keeping it open for long
lmfao i dont have an xyz domain besides qsmp
or 108.218.55.35
are you done since keeping this open is risky af
ok your offline so asusming your done
closing it
lmk when i should open it again
can you open it again rq
https://cdn.meemkade.com/u/dc141716-845c-4489-8cee-f4aa8d128e19.png pihole got a cool update
took down my dns for like 10 minutes since it changed alot of shit and how it works but worth
bro it failed the handshake again
what
I can handshake fine with a normal website
ok you can close it
but im gonna try 1 more thing in a sec
@flint belfry is it still open
that's a yes
yes it should be
ping me when your done testing since once again this is awful to leave open considering it has zero auth and i know that people nmap my ip sometimes
(and also im paranoid)
atp testing it is fine since she used reverse ssh
ok shouldnt be too much longer
@flint belfry you can close
already did
pihole isnt working for me rn so i couldnt respond
gg
@spare quartz the computer that made the get request was a computer in technical design and i found it but it dosent seem to be malicious or whatever
it also dosent have the 3d printer sofrware used to slice stuff and connect to the printers managment stuff so thats even weirder
not sure what to do besides just see if it happens again
@spare quartz @rustic vine what are we thinking
none of it is functional as of right now but as basic ui design
oh uh you can shutdown btw
I think im done
been done lol
ok cool
Kade.
It has authentication.
PAP Username and PAP Passphrase.
atp this protocol is so annoying
what protocol is so annoying
atp.
sudo sstpc --log-level 400 --log-stderr 192.168.10.123:30216 --cert-warn noauth noccp noipv6 novj ipcp-max-configure 1 ipcp-restart 1 defaultroute
this is the command
ive been using
all this time
why.
there is zero authentication and anyone could use the same command on the open port
because its the fuckin one you gave me
ive literally told you a week ago there is auth 😭
it dosent matter what the command is it dosent have authentication to prevent anyone from connecting it and i am not leaving it open on my router
then why did you give me sudo sstpc --log-level 400 --log-stderr 192.168.10.123:30216 --cert-warn noauth noccp noipv6 novj ipcp-max-configure 1 ipcp-restart 1 defaultroute
?
dense
excuse me?
-pap_username=… -pap_passphrase=…
you may specify infinite pairs of these flags
do so!!!
this fucking command has zero authentication in it so someone malciious could run it and boom theyre connected
unless it refuses to connect without auth but guess what
it dosent
it does not
the server dosent need auth for you to do shit
what does that change
literally EVERYTHING
no it fucking dosent atp 😭
how come i can connect with zero auth in the command ive sent
if you do not specify a PAP pair it will open the server insecured
because you haven’t specified any PAP pair
and still work
i can reach everything on the network
yes
thats not my job / you never told me to do that
point still stands
I DID
im not opening this on my router
oh my god you are so dumb hold on
motherfucker you didnt add basic authentication or at least a refusal with no authentication
GOD CURSE DISCORD SEARCH
thats how every secured vpn works
then why the FUCK does the command ive been using on the ubuntu vm work and whats stopping it from working on someones malcioous side
BECAUSE YOU DIDJT SPECIFY A PAP PAIR ON RHE SERVER
KADE!!
THIS WAS TODAY
you haven’t brought this up ever
god let me wake up
yes because i thought you never added authentication for fucks sake
you never gave me a new command or instructed me how to do so
literally pinged you about it a week ago hold on
OKAY.
Now on computer
did you never ever consider what these flags were for
yes i compltely forgot this existed because we kept testing shit over and over
you should make the server not even have an insecure mode
BITES BITES BITES BITES BITES BITES BITES
ok
thats against specification
By default, authentication is not mandatory. If an implementation
desires that the peer authenticate with some specific authentication
protocol, then it MUST request the use of that authentication
protocol during Link Establishment phase.
sstp
god can you just make wireguard bind wg0 to the wifi interface or some shit at this point
and also implementing it in rust is mildly annoying
im so sick of dealing with this protocl
wireguard is what i WOULD have used if the kernal had net tun
no
because then i would have to do everything all over again and you'd still run into most of the same problems because i have to make my own tcp/ip stack due to limitations i have been burdened with
and "the protocol" makes no sense since you brought up an issue that was caused by user error
next time just stop assuming stuff about the server, please......
what part of it is hard for you?
so well
what stuff???
i just said i didnt want to fucking open the port on my router
"lack of authentication" for one?
i have a fucking life so im prone to forgetting shit
ive just been doing what youve told me to do and ive ran the same command that dosent have auth since day 1
im prone to fucking forgetting shit atp
im not a fucking robot for crying out loud
ive tried to inform you multiple times that it's had PAP this entire time and you didnt budge 😭
i do not fucking know what pap is
i dont really mind what you forget but constantly saying "it does not have x" even after i've said so is not nice to deal with
contextually, it just means the thing you authenticate with
technically, it's just a password/user protocol for PPP
and im not even complaining about the protocl because of the authentication
what part are you complaining about?
i had no idea what sstp was until now and som
let me finish
i had no idea what sstp was until now and some shit dosent support it natively
wireguard on the other hand is widely known
i feel like thats just a failure on marketing
SSTP isn't the problem here and really never was
the main issue i have with the prtocol is the fact how unstable it is and i dont know if its your server or the protocl
but a fucking
rust's TcpStream has some funny default behavior where it will block when you .read() seemingly even if there is no data to read, unlike smth like python where you can just sock.read(num_bytes) and it returns whatever it got
the solution is setting a read timeout but still kinda annoying that it's a problem, and even then it seems the best solution is just to read a byte at a time and check individual bytes until it gets a read timeout (and then determine if the timeout is actually end of data or just some data missing)
icmp shouldnt crash the server (nmap)
crashes the thread, again
like if i look at the server incorrectly its going to crash unlike wireguard
i DID try wireguard but once again
thank you freescale or whoever the fuck made the distro because it dosent have /dev/net/tun or tap
someone showed it to me today and I thought it was pretty neat
let me remind you, ... again .... that i have to simulate nearly every step of every connection because of the burdens you have put upon me. this is not a failure on SSTP, PPP, IP, TCP/UDP/ICMPs part
huh neato
ye
saves you some work of copy pasting the test output
into the assertion
and it looks nice (bonus points)
I don't use rust though 😅
the protocols i am using have been in use at the latest since 2007, and are fine when they have something to go over, like an OS network stack. i do not have such luxuries.
you agreed to make the server if i paid you so the burdens are just what it is from making this server
yes and i am still writing the server
the burdens are the fact that i was never hyperbolizing what i meant by "making the internet"
well sometimes you say that some instances of the server crashing (eg that computer a week ago sending back data crashing the socket) was something you couldnt fix so i would assume that at that point you stopped working on the server
i havent even tested the camera rtmp stream yet and i bet its probably going to make something die
no, those are physically impossible for me to fix without having full control of all computers on your network
seq.
i know i keep bringing up wireguard but how come wireguard is invulnrable to such error and wont die
standby as i read this
because they dont have to write their own networking stack...
i do
what do you think tun does, anyways
wireguard has also been in development for like probably at least a decade
SSTP has been in service for twice that time btw
and it's backed by MS
it's again not a protocol issue
i have no fucking clue since im still learning shit but im pretty sure it creates virtual interfaces or whatever i really dont know
well like IMPLEMENTATIONS of wireguard
effectively serves as a little gap between the layer 2/3 parts of your network or just: where your IP/TCP/UDP/ICMP are sent
ig the same could be said for implementations of SSTP that can rely on a preexisting stack tho
because the linux kernel already has networking built in, that's mega easy to do
same with sstp... its just having to work without a stack is the problem
ig the same could be said for implementations of SSTP that can rely on a preexisting stack tho
i would recompile the firmware if i found the sorce code from freescale and tried to implment tun myself but
- i dont even know if thats possible
- if something goes wrong while replacing the kernal then the printer interface is completely fucked due to ssh being the only way to access the console from my knowledge
- this thing isnt just a mini computer so it dosent have boot options
- its not worth the risk of bricking the printer
and a question, for you... what have you tested on the server that is not nmap or some wildly hot connection making program?
and id rather not damage school property despite us probably going to get a bambu printer in a few years
define
because youve seen what ive tested aside from nmap
is nmap the only connection-hot thing you've tested?
i mean the printer has a rtmp stream used for the client but i dont even know thats worked
not neccesiarly ive tried to do a file transfer at one point but it died from some stupid error i dont remember (file transfers are critical for gcode transfers from the slicing program)
depends if you would call a file transfer connection hot
its only a few mb anyways
i cant right now but i can try again later
the server dosent open multiple?
it can, however, i have not added multithreading to TCP specifically because im worryed about stream desync
the bigger issue lies within the TCP ICMP dest unreachable loop, most likely... it'd probably work much faster if the hosts were known to work and no loop had to be done
so its possible but potentially unreliable/unstable
it's possible but it'll require me not to do something else for more than 5 minutes
i can wait
that's weird
you should always be given some end of stream
Because SSTP doesn't close the connection, at least not during the setup phase
So yknow it'll send the HTTP response and then keep the connection open, not sending EOF because the connection isn't closed
because the data that comes after the http response is the sstp packet data
the content-length shows you this by being 18446744073709551615 bytes long
it doesn't want to terminate the connection
right but if I just .read() again it'll hang
are you absolutely certain your state machine works correctly?
waiting for data that doesn't come (because the client hasn't started sending SSTP stuff but)
it's just like, you can't do "read until EOF" because there is no EOF, so the best thing to do is just step through it one byte at a time
well that's perfectly fine
just make sure you send an sstp connection request after you read the http response
cuase thats what the server wants
but also like in python if you just sock.recv(num_bytes) on the HTTP response, it grabs the entire HTTP response until it reads it all and just returns that
whereas if I try to TcpStream::read_exact, it hangs until the buffer is full
i feel like the name says that though, doesn't it
do you have a read_unexact or something
yeees but
well there's normal .read() but there's no guarantee that all the data will get read
which is why calling .read() again would help, but instead of returning 0 it just hangs
if you want my opinion i just
(0 to indicate 0 bytes read)
that's not really what im doing though
yes i know you're trying to read the packets as how long as they tell you they are
I'm saying ".read() has no guarantee to read the entire HTTP response, so calling .read() again would be good to ensure that it returns 0 once it's done, but it never returns 0"
then uh, don't do that
"which is annoying"
just read until theres \r\n\r\n
but that involves annoyingly reading every byte
I will care :(
smh
fun scanDelimiter(lookFor: String): String {
var bucket = ""
var pool = ""
while (bucket.length != lookFor.length) {
val charCode = newSocket.inputStream.read()
if (charCode == -1) throw IOException("Communication terminated")
val next = Char(charCode)
if (lookFor[bucket.length] == next) bucket += next
else {
pool += bucket + next
bucket = ""
}
}
return pool
}
protocolViolation(scanDelimiter(" "), "SSTP_DUPLEX_POST", "HTTP Method was not %s, got %s")
protocolViolation(
scanDelimiter(" "), "/sra_{BA195980-CD49-458b-9E23-C84EE0ADCD75}/",
"HTTP Path was not %s, got %s"
)
protocolViolation(scanDelimiter("\r\n"), "HTTP/1.1", "HTTP Version was not %s, got %s")
var contentLengthOK = false
while (true) {
val next = scanDelimiter("\r\n")
if (next.isEmpty()) break
when (next.substringBefore(':')) {
"Content-Length" -> {
protocolViolation(
next.substringAfter(':').trimStart(), "18446744073709551615",
"Content-Length was not %s, got %s"
)
contentLengthOK = true
}
}
}
protocolViolation(contentLengthOK, true, "No Content-Length")
}
wow that is
yeah i should not have gone on twtiter today
wut
yeah 😭
lovely to open this channel to
hey i jusut wanted flfuffy things :<
why is everyones timeline hot shit 😭
i just get shitposts and drama and shit
meanwhile everyone else gets gore car crashes and what you just saw
well im gonna be honest it wasnt TOTALLY out of line for my feed
like, the only reason i saw it was cause it had one of my favorite characters in it for some reason 😭
yes
yes

I DONT KNOW
seeing aera deleted that not sure if i want to google it
japanese people are SO weird dude
oh THAT thing
yeah that thing
GO NUKE JAPAN!!
its not even gore right its just
donating blood???
😭
yeah
stop bruh
it's JUST donating blood
red cross ass post idfk
thats not bad thats goated
what the fuck 😭
😭
uhhhhhhhhhh
if i explained it here idk if im gonna get struck down soo
i would google it
that sounds like a bad idea
i really cant explain it because if i got warned for "toxic laughter" i dont know whats gonna happen if i explain what a fetish is 😭
no fucking wa
wait no thats not a plane dragon is it
sorry kade... its not your lucky day..
I couldn't launch helldivers the other day cause I had a jar file running
rigged
how do you run a jar file
java -jar
thats not running the jar file 🤓☝️
no the anticheat prolly
maybe not cause it was a jar file
prolly cause the one I was running takes control of all keyboard inputs
why were you running a keylogger on yourself
all java swing apps are malware
Eating it
1984 only one decisiomn
take away plane dragons ability to vote ..
wdym
jjjjjjjjjjjjjjj
????
this hellscape
this is literally what you'd have to do in any other lang if you're reading byte-by-byte
😭
um yes
make your life easier
why not just make your own for reading until a specific delimiter
ik..
did u close...
i love iec reacrmea\
whyyy is it giving me WouldBlock errors
?? ?
you can make Rust's network stuff throw an error instead of blocking
but I turned off that feature
but it still gives me that error
thatsound dumb..
no
wtf
how come my stupid python script can still get a response but the rust code can't
?
idk I just like
can't connect with your server at all
try restarting it?
could be all the half-open connections screwing it up
[/174.209.192.243:10867;443 @ 20:24:29;839] Server failure outside of operation; java.io.IOException: Communication terminated
at bread_experts_group.MainKt.main$lambda$3$lambda$2$scanDelimiter(Main.kt:105)
sent an eof/eos on this line
idk it's dying when doing the handshake
i am...
show your code
fn main() -> Result<(), std::io::Error> {
let mut client = SstpClient::new("javart.zip", 443).unwrap();
let http_req = concat!(
"SSTP_DUPLEX_POST /sra_{BA195980-CD49-458b-9E23-C84EE0ADCD75}/ HTTP/1.1\r\n",
"Content-Length: 18446744073709551615\r\n",
"Host: javart.zip\r\n",
"\r\n"
).as_bytes();
client.tls_socket.write_all(http_req)?;
let mut resp = vec![];
loop {
let mut r = [0u8; 1];
let num_read = client.tls_socket.read(&mut r);
match num_read {
Ok(n) => {
if n == 0 {
println!("connection terminated");
break;
}
resp.extend_from_slice(&r[0..]);
},
Err(e) => {
if e.kind() == std::io::ErrorKind::TimedOut {
break;
} else {
eprintln!("Encountered error {e:?}");
std::process::exit(-1);
}
}
}
}
println!("{}", String::from_utf8_lossy(&resp));
client.tls_socket.shutdown()?;
Ok(())
}
and send a request again, im logging what characters you're sending now
use std::net::TcpStream;
use native_tls::{TlsConnector, TlsStream};
pub struct SstpClient {
pub tls_socket: TlsStream<TcpStream>,
}
impl SstpClient {
pub fn new(hostname: &str, port: u16) -> Result<Self, Box<dyn std::error::Error>> {
let tcp_socket = TcpStream::connect(format!("{hostname}:{port}"))?;
tcp_socket.set_nonblocking(false)?;
tcp_socket.set_read_timeout(Some(std::time::Duration::from_millis(200)))?;
let tls_connector = TlsConnector::builder()
.danger_accept_invalid_certs(true)
.build()?;
let tls_socket = tls_connector.connect(hostname, tcp_socket)?;
Ok(Self {
tls_socket,
})
}
}
ok one sent
no but like
I should get your response
and then stop
but I stop while reading your respose
weird
ill just leave the server on
HAPPY APRIL FOOLS ... in 8 hours
@flint belfry doing serv download test momentarily ...
what links does your sserver not block
school server*
also pap working BTW
(i set you a new username/passphrase, i can send it in dms by request)
idk
they block popular sites like reddit and limit YouTube
speed test should be fine
