Comments (8)
I had a similar issue when getting printer attributes (ipp.OperationGetPrinterAttributes
) - I would see EOF errors intermittently
@phin1x your latest changes fixed the problem for me 👍🏻 thanks
from go-ipp.
Hi @kruftik, thank you for the good error description. i will have a look into it at the weekend
from go-ipp.
@phin1x there was an occasion to look into ?
from go-ipp.
@kruftik Can you explain in details the work around that you mentioned?
from go-ipp.
@phin1x Did you get a chance to check out this issue?
from go-ipp.
@kruftik Can you explain in details the work around that you mentioned?
actually, I didn't dive into deep details. I have noticed that the response buffering before parsing prevents strange panics and that's it :-)
my suppose there is some kind of "batching" during response writing from CUPS side and/or reading inside the stdlib and such a batching causes slice out-of-bounds panics since the library expects contant offsets / sizes etc.
from go-ipp.
i have updated the http adatper to preload the ipp response into a buffer (the socket adapter already does this). i initially tried to avoid loading the entire ipp response into memory, as ipp responses can contain additional data (e.g. spool files or configs) which can be several gigabytes in size.
please try the master branch and let me know if the problem is fixed.
some notes on strings in the ipp protocol. strings are encoded by first specifying the length with an int16 and then the actual string content. we decode this by reading the size, creating a fixed byte-slice with the size read, and reading from the reader with the byte slice. this way the reader is always forwarded by the correct amount. potential padding is discarded by converting from a byte-slice to a string.
from go-ipp.
fixed in 1.6.1
from go-ipp.
Related Issues (16)
- ipp client to printer HOT 2
- Question: Does golang have project to find the suitable ppd? HOT 1
- panic: cannot get tag of attribute limit HOT 3
- panic: runtime error: makeslice: len out of range HOT 2
- help, can't print pdf with my hp1020 HOT 1
- Unexpected EOF HOT 5
- Using without cups HOT 1
- Get all printers using IPP HOT 1
- Why no print-color-mode attribute? HOT 1
- Unable to get printer list HOT 2
- Question regarding tests HOT 2
- Lack of tests HOT 4
- Missing printer-is-default Attribute HOT 1
- Printing Excel files and images results in garbled characters. HOT 5
- Setting collections attributes? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from go-ipp.