moosemorals / managesievej Goto Github PK
View Code? Open in Web Editor NEWManage Sieve protocol client library (in Java)
License: MIT License
Manage Sieve protocol client library (in Java)
License: MIT License
Is it possible for you to make socket timeout configurable and not hardcoded to 5000 ms? Tnx in advance.
In order to be compatible with Cyrus, the first argument of sieve commands sent to the server should use the 'quoted' string representation.
There is a serializable-related warning in ParseException.
Hi,
In order to better support the managesieve protocol in OBM, we are working on a fork of managesievej. This fork includes:
encodeString
uses the literal-c2s string representation from RFC 5804 instead of literal-s2cescapeString
escapes double quotesFor now, the fork has no Netbeans support, as nobody here uses Netbeans (the build.xml and the Netbeans files have been dropped). The work-in-progress XML support has also been dropped.
We would be glad to contribute some of these changes back. What is a bit tricky, though, is that changes like switching the way command encode their strings may break compatibility with other implementations, if they don't conform to the spec in a different way from Cyrus.
Currently, GETSCRIPT expects content followed by OK, and cannot handle a NO/BYE answer.
It should be possible to use the SASL authentication mechanism to authenticate on behalf of another user.
I used the ConnectAndListScripts to make test and found that the client.setActinve can only make one script active while making other scripts unactive...
is this a bug? or this just work like this ?
Options:
This is blocking for the other issues.
I'm building a simple UI to edit my sieve scripts and to avoid opening too many connections to the server, I want to check if the client is already/still connected. But if the client is not yet connected or the underlying socket was closed, I get a NullPointerException
and I have to guard against this by doing:
try {
if (client.isConnected()) return;
} catch(NullPointerException e) {
// this is fine if we are not yet connected
}
ManageSieveResponse resp1 = client.connect(host, port);
...
If ManageSieveClient.java#L171 would check if the socket exists (like ManageSieveClient.java#L171), the NPE could be prevented and I could check if the connection is still open.
When communicating with the server, the client should use the literal-c2s string representation ({$count+}) as opposed the current literal-s2c ({$count}) which is reserved for server-to-client messages.
Hi,
the InputStreamReader is opened with UTF-8 charset but the PrintWriter is not (ManageSieveClient.java:806).
Is there a reason for this or is this a bug?
Thank you
Peter
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.