• Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

AltME groups: search

Help · search scripts · search articles · search mailing list

results summary

worldhits
r4wp32
r3wp646
total:678

results window for this page: [start: 201 end: 300]

world-name: r3wp

Group: Ann-Reply ... Reply to Announce group [web-public]
Graham:
20-Aug-2010
S3 is also used for storing large files... so probably one needs 
to alter the http protocol to save content directly to a disk file
Graham:
23-Aug-2010
Chris, the current http protocol does support custom headers with 
get like this 

read URL [ header [ Cookie: "authtoken=anotherfoo" ]]
Chris:
23-Aug-2010
A more generic implementation may be a protocol that wraps around 
http(s).

read/custom oauth://[chris-:-api-:-twitter-:-com]/ [post a: 1 b: 2 c: 3]
Group: View ... discuss view related issues [web-public]
Graham:
26-Mar-2005
I'm getting a 100% cpu when I do a wait inside a uniserve protocol... 
so I want to kill all the waits so I can restart the whole process 
after a period.
Group: MySQL ... [web-public]
Gabriele:
22-Aug-2006
if the behavior of the mysql-protocol has changed lately, then yes. 
when i wrote that, it needed that "first". (i used that function 
a lot so I know it worked)
Dockimbel:
16-Sep-2006
The new MySQL web site is much less third-parties friendly. It looks 
like MySQL doesn't want to give much attention on alternatives drivers. 
They want ppl to use their own drivers and nothing other. The new 
MySQL protocol licence is more restrictive than before. They described 
a GPLed protocol concept (which a IMO, a very stupid concept...) 
See : http://dev.mysql.com/doc/internals/en/licensing-notice.html
Dockimbel:
16-Sep-2006
Of course, I didn't use the protocol documentation on the web site 
(due to license restriction and also because, the documentation is 
deeply flawed (intentionnaly??).
Luca:
28-Sep-2006
I gave a look to the protocol and found that :
Luca:
28-Sep-2006
Oh... I'm using MySQL 4.1.9 and I have the same problem with both 
0.9.9 and 1.0.7 protocol versions.
Dockimbel:
28-Sep-2006
I'm aware of only one case where my protocol implementation may fail 
with a size difference of 1 byte between expected size and received 
size: that's the compression header case. This case can only happen 
when the client send a compression flag to the server. My driver 
never send such flag, so this case should never happen.
Oldes:
29-Sep-2006
I use the protocol with MySQL 4.1.5 and 5.0.22 and never noticed 
such a problem.
Oldes:
13-Jul-2007
I just found that there is a serious bug in sql-escape functions 
which is part of mysql-protocol...  new versions of MySQL for example 
autoconvert "'" to ' which MUST be escaped or you will get error 
or your query may be injected! Current sql-escape function do not 
escape such a cases.
Maarten:
28-Jun-2008
Will, I have, and for Qtask I have even implemented the search protocol 
in REBOL. It's fast.
Maarten:
28-Jun-2008
(i.e. the search client protocol that can talk to Sphinx). You can 
also compile a client in mysql and then use sql for your queries.
Pekr:
3-Jul-2008
Guys, what do you think about Tim Johnson's ml remark? Could we help 
him somehow?

-----------------------------------

I've been using mysql-protocol (Mysql Scheme) and cgi for many years 
now. I 

really like it, but I think that /command would bring some advantages, 
if
it can directly access the "C" API for MySQL.


Example: Using the mysql scheme on a tcp/ip connection, I have to 
code

the escaping of special characters for insert and updates and code 
the
unescaping of special characters for retrieval. 


Using the C API from other scripting languages, the mysql_real_escape_string()
function handles the escaping _appropriate_ to the version, and
queries are similarly unescaped.
Dockimbel:
11-Nov-2008
I've just upload a new experimental 1.3 version of MySQL driver supporting 
mutiple queries, stored procedures and multiple result sets. Reading 
mutiple results is done by calling COPY for each result. Download 
at http://softinnov.org/tmp/mysql-protocol-41.r
Dockimbel:
15-Nov-2008
New version 1.3 of new MySQL driver released as beta. (same URL).

Changes:


- Fixed the multiple result sets end-of-stream issue. Now an extra 
COPY will
  return NONE, marking the end of the data stream.

- Fixed error message parsing for protocol 4.1.


- Added SQL request delimiter property to port/locals/delimiter (default: 
#";")
Dockimbel:
27-Nov-2008
Oldes: are you sure you're using the 1.3 beta mysql:// driver ? You 
can find it here : http://softinnov.org/tmp/mysql-protocol-41.r
Oldes:
27-Nov-2008
I've send more info into private in R3-alpha... anyway.. I wonder 
where it's possible to find some mysql protocol spec. Do you just 
do reverse engineering?
Oldes:
27-Nov-2008
found it http://forge.mysql.com/wiki/MySQL_Internals_ClientServer_Protocol
Dockimbel:
27-Nov-2008
I used to reverse-engineer, but since 5.0(?) MySQL AB documents the 
protocol with sometimes (intentional?) blocking errors.
Dockimbel:
28-Nov-2008
Improved version of MySQL driver 1.3 beta released at http://softinnov.org/tmp/mysql-protocol-41.r

Changes:


- Improved automatic flushing of unread data. Now you can forgot 
the second COPY
  on sproc calls (should be robust, but needs testing).
  

- Multiple SQL requests are now sent as one packet by default. No 
more need to
  change the db/locals/delimiter value for 4.1+ servers.
Dockimbel:
3-Dec-2008
Bugfix revision for MySQL driver 1.3 beta at http://softinnov.org/tmp/mysql-protocol-41.r

Changes:


- Fixed a regression bug appearing when trying to open a connection 
without a database name.

- Fixed "port not open" error after automatic reconnection.
Gabriele:
3-Dec-2008
http://softinnov.org/tmp/mysql-protocol-41.r
Will:
3-Dec-2008
it is just a utilities wrapper that works on top of the mysql-protocol.r, 
it makes queriing mysql more rebolish
Will:
3-Dec-2008
;without wrapper:
do http://softinnov.org/tmp/mysql-protocol-41.r
db: open mysql://localhost/db1
nodes: send-sql/named {SELECT `id` `name` `data` FROM `node`}

node: send-sql/named {SELECT `id` `name` `data` FROM `node` WHERE 
`id`='1'}

;with wrapper:
do http://softinnov.org/tmp/mysql-protocol-41.r
do http://reboot.ch/rebol/mysql-wrapper.txt
.db/databases: [
	db1 mysql://localhost/db1
	db2 mysql://localhost/db2
]
.db/use 'db1
nodes: .db/get/all 'node [id name data] none
node: .db/get 'node [id name data] [{`id`=?} 1]
;if you follow the rule to name your primary-key "id",
;you can use this shorter version:
node: .db/get 'node [id name data] 1

;/debug is your friend, use it to see the generated query
Gabriele:
18-Dec-2008
Doc, the read-packet function in mysql-protocol.r is missing one 
word in the /local list. Line 538:
Gabriele:
18-Dec-2008
(mysql-protocol-41.r)
Will:
13-Jan-2009
ca you diff the binary data of the image before you send it to db 
and after retriving it? also once the data is inserted thru mysql-protocol 
can you retrive the image from the db with another client and see 
if it works?
Will:
13-Jan-2009
btw, I suggest not to store images in the db, store it somewhere 
on your hardrive and put in the db a pointer to the file, if you 
really need it and do not find ehat's wrong, ping me in the weekend 
and I can test that here, althougt I use other binary data with mysql-protocol 
with no problem, not sure if it apply but check also encodings for 
mysql storage, etc
DideC:
30-Mar-2009
I have a new mysql server but I can't connect to it with %mysql-protocol 
v1.2.1 :

>> open mysql://user:[traiteur-:-localhost]/testjmg
connecting to: localhost

** User Error: ERROR 1251 : Client does not support authentication 
protocol requested by server; consider upgrading MySQL client
** Near: open mysql://user:[traiteur-:-localhost]/testjmg


I know I have to change something in the mysql server configuration, 
but does anyone can point me to what it is ?
Dockimbel:
30-Mar-2009
Btw, you should check if your code is not using an older version 
of %mysql-protocol.r (just in case you're reusing old source files).
Dockimbel:
30-Mar-2009
Just installed 5.0.77 community server on Windows, no problem to 
log in using default password mode with mysql protocol v1.2.1.
DideC:
30-Mar-2009
Does protocol v1.2.1 works with new password method ? If so, maybe 
I just need to update the user password int he db ?*
DideC:
1-Apr-2009
Ok, it works now. My bad, I put the last protocol in a folder but 
I where still loading the old one from another folder !
amacleod:
29-Apr-2009
I'm hosting a large number of text docs broken up by sections in 
a mysql db. Once all the material is on line the changes (and thus 
downloads) wil be smal for the most part. But in the mean time large 
amounts of material are still to be uploaded to the db and when a 
client finds this new material it will download it and any changes 
to previous material. The material contains a lot of image data too 
so it could add up. Right now I have about 40 megs of data and I 
have about 10X more to upload.


If its too tuff for me I will just display some animated gif but 
I would prefer something more tangible..

I'll look into your suggestion, Thanks Doc...


BTW I tried the latest mysql-protocol and it broke my app. I have 
not had a chance to look into it but I think you changed some syntax 
for selects??
I'm using Version: 1.1.2 at the moment.
Graham:
14-May-2009
This is interesting http://sphinxsearch.com/news/37.html.. you can 
now connect to the sphinx searchd daemon using the mysql binary protocol 
... so doc's mysql driver can also now connect to sphinx??
Graham:
14-May-2009
is doc's mysql protocol the binary one they talk about?
Will:
5-Jul-2009
here is the latest http://softinnov.org/tmp/mysql-protocol-41.rgive 
it a try
caelum:
24-Aug-2010
Hi MySQL Group, I program in C, Fortran, Cobol, Superbase4, PHP, 
MySQL and some other languages but I'm fairly new to Rebol. I am 
attempting to connect to a remote MySQL database by following the 
intstructions here http://reboltutorial.com/blog/mysql/.I have downloaded 
the mysql-protocol.r file and run it in my Rebol program but I keep 
getting this error 'Access Error: Network timeout'. What does that 
mean? How do I fix it? Any help appreciated.
caelum:
24-Aug-2010
I pinged the server just fine. Here is the code:

REBOL []
#include do %mysql-protocol.r

results: read rejoin [mysql://mysqluser:[mypassword-:-mysite-:-com]:22/mydatabase 
["SELECT * FROM tablename"]


The MySQL server is on a hosted machine. In cpanel I added my IP 
address to the 'Remote MySQL' Remote Database Access Hosts list. 
I think you are right that I will need to access the database from 
the cgi because the hosting company will not allow direct access, 
even though its suppossedly allowed in cpanel.

Thanks for your help.


Are there any examples of accessing a MySQL database via CGI in Rebol? 
I just googled and found nothing.
amacleod:
24-Aug-2010
Here is a simple example but basically you just create a script that 
reads from the DB locally and prints. Your remote app reads the printout 
when it reads from the page:

#!/user/cgi-bin/REBOL -cs
REBOL [Title: "Get Roster"]

do %mysql-protocol.r

db_ip: mysql://user:[password-:-localhost]:3306/bighouse

db: open db_ip
insert db "SELECT * FROM roster"
		dat: copy db
close db

print dat
amacleod:
24-Aug-2010
Place this file in your cgi-bin and have your remote client 'read' 
the url to that file.  


Don't forget to place mysql-protocol.r somewhere on the server an 
'do' it.


you could 'encript' the output with encloak using a simple key if 
some security of the data is needed. Just decloak at the remote client 
with same key.
amacleod:
20-Oct-2010
Anyone know if  that is supported with mysql-protocol?
GrahamC:
22-Sep-2011
mysql problem what does this error mean?

    Hello,
    I am just looking at REBOL and trying to access mysql
    I got this error??
    ===================================
    connecting to: 127.0.0.1

    ** User Error: ERROR 1251 : Client does not support authentication 
    pro
    tocol requested by server; consider upgrading MySQL client
    ** Near: db: open mysql://[rootass-:-127-:-0-:-0-:-1]:3306/mysql
    ==============================================
    This the code I am using from rebol document
    Rebol[
    title: "Rebol Mini-Text Database with Visual GUI"

    author: "http://reboltutorial.com/blog/rebol-mini-text-database/"
    version: 1.0.0
    ]
    do %mysql-protocol.r
    probe first system/schemes
    db: open mysql://[rootass-:-127-:-0-:-0-:-1]:3306/mysql
    insert db {
    DROP TABLE IF EXISTS products;
    CREATE TABLE products (
    name VARCHAR(100),
    version DECIMAL(2, 2),
    released DATE
    );

    INSERT INTO products VALUES ('cheyenne', '1.0', '2007-05-31');
    INSERT INTO products VALUES ('mysql', '1.1', '2007-05-01');
    }
    insert db read %setup.sql ;-- execute a big SQL file
Dockimbel:
22-Sep-2011
It looks like the MySQL driver he's using is too old for his MySQL 
server. He should try with the latest version for newer servers: 
http://softinnov.org/tmp/mysql-protocol-41.r


I haven't made it official as it does not work for older servers 
IIRC, and I also never found the time to fully test it with more 
recent ones.  But it should work correctly.
james_nak:
21-Oct-2011
Doc, what a lifesaver! I just spent the last 7 hours trying to figure 
out what was wrong with my remote rebol-based mysql app. It stopped 
working after I upgraded mysql. I spent most of my time messing around 
with mysql until I narrowed it down to the protocol.
 
sql-protocol-41.r Addresses: 

User Error: ERROR 1251 : Client does not support authentication protocol 
requested by server; consider upgrading MySQL client  (When using 
newer long hash passwords) 
and

User Error: ERROR 1043 : Bad handshake  (when using older short hash 
passwords) 

Thank you for posting this. I was getting to the point of panic.
Group: Web ... Everything web development related [web-public]
Geomol:
26-Feb-2005
Good suggestions, Anton! Yes, I'm pretty sure, it's outside REBOL's 
control, as I sometimes see strenge behaviour (for example regarding 
file locking) in other programs. The intra-network, I'm doing those 
things in, is a combined Win98-Win2000-WinXP network with a few UNIX 
servers present. The way, we share drives, is the standard Windows 
way using the SMB protocol (using Samba on the UNIX servers). I've 
for a long time suggested, that they do it the UNIX way and install 
NFS clients on the PCs in stead. I tried to install some ProNFS client 
yesterday, but couldn't get it to work (probably because of some 
lame Windows authentification, maybe also encrypted passwords).


It could be interesting to see, if the cache problem dissappear when 
using NFS.
Geomol:
29-Mar-2005
I have a problem with HTTPS over a proxy. I'm using REBOL/Command 
2.5.6.3.1, that came with our SDK. This version first need the HTTPS 
protocol to be activated using this code:


net-utils/net-install HTTPS make system/schemes/http/handler [] 443

system/schemes/https: make system/schemes/https [user-agent: reform 
["REBOL" system/product system/version]]

I activated trace by typing: trace/net on

Our proxy is set up ok, as I can read the internet with a browser 
using it (both HTTP and HTTPS).
Now if I in REBOL do this:

>> s: read https://webservices.rki.dk

I get:

URL Parse: none none webservices.rki.dk none none none
Net-log: ["Opening" "ssl" "for" "HTTPS"]
connecting to: webservices.rki.dk
Net-log: {CONNECT webservices.rki.dk:443 HTTP/1.1
Host: webservices.rki.dk:443

}
Net-log: "HTTP/1.0 200 Connection established"
Net-log: {GET https://webservices.rki.dk:443/ HTTP/1.0
Accept: */*
Connection: close
User-Agent: REBOL Command 2.5.6.3.1
Host: webservices.rki.dk:443
}
Net-log: none

** User Error: Error.  Target url: https://webservices.rki.dk:443/ 
could not be
retrieved.  Server response: none
** Near: s: read https://webservices.rki.dk
Geomol:
30-Mar-2005
I notice a bug in the CONNECT request from REBOL to the proxy. Ethereal 
reports:

[Dissector bug, protocol HTTP: "Request Version" - "http.request.version" 
invalid length: -32 (proto.c:2104)]
!?
Luisc:
1-Apr-2005
jaime you probably need to dig into what protocol your ebank uses...the 
most common ones are HBCI and OFX  ( i think =D  )
Pekr:
13-Jan-2007
yes, that should work ... although I can imagine hiding the links 
... I will try to look at sitemap protocol - seems to be a standard 
...
Oldes:
25-Jan-2007
Yes, I did, and if you scroll a little bit up, you can find the link 
easilly - it's in big yellow block of text:) And I agree, that it 
would be good to have cookies support directly in Rebol, as my cookies-daemon 
is relly hard hack I cannot be sure that it would not rewrite some 
future http protocol updates
GrahamC:
9-Oct-2011
Maybe you're using an old esmtp protocol .. as mine sends EHLO
Tim:
9-Oct-2011
Not sure what to do about the 'old protocol'. Is there a way to change 
it? I'm using 2.6.2.4.2
GrahamC:
9-Oct-2011
Get the latest esmtp protocol
Group: Announce ... Announcements only - use Ann-reply to chat [web-public]
Coccinelle:
11-Mar-2005
I updated the sql-protocol script. It's always on the script library 
here http://www.rebol.org/cgi-bin/cgiwrap/rebol/view-script.r?script=sql-protocol.r

The only change is related to the sql dialect for the FROM clause. 
Now the following syntaxes are possible:
   FROM table table ... (existing syntax)
   FROM [table alias] [table alias] (existing syntax)
   FROM table AS alias table AS alias (new syntax like SQL)
   FROM alias: table alias: table (new syntax more "rebolish")


What do you prefer, something very near to SQL or something more 
in the spirit of REBOL.

Your feedback is welcome, I prefer by mail ([marco-:-ladyreb-:-org])
Coccinelle:
5-Feb-2006
New version of SQL-PROTOCOL is published on http://www.rebol.org/cgi-bin/cgiwrap/rebol/view-script.r?script=sql-protocol.r


This new version is a first attempt of standard SQL string parsing. 
It's limited yet to SELECT clause. INSERT, UPDATE and DELETE will 
be done soon. Previously, sql-protocol was only able to process SQL 
like dialect, the road to a better compatibility with SQL is now 
a reality. I will make it compatible with MySQL as much as possible.
Coccinelle:
5-Feb-2006
I remember you that sql-protocol is able to process SELECT, INSERT, 
UPDATE and DELETE,  and CREATE or DROP TABLE query and is able to 
join tables. ORDER BY and LIKE are supported but GROUP BY, COUNT, 
MAX and all other statistical functions are not yet supported.


It can be also compatible with Microsoft ODBC Text Driver database 
(Delimited, CSVDelimited and TABDelimited tables) so you can share 
your database with other ODBC applications, like for example Excel 
to produce pivot table or pivot chart, or Word to produce letters 
and mailing.
Coccinelle:
5-Mar-2006
New version of SQL-PROTOCOL is on www.rebol.org


This new version handle now standard SQL string for SELECT, INSERT, 
UPDATE and DELETE so you have a better compatibility with other database 
like MySQL, Oracle or ODCB protocol.
Ingo:
29-Mar-2006
Oh, by the way, it's called imapx-handler.r, and adds some handling 
of mail-folders and and the possibility to fetch only specific headers 
to the imap protocol.
Graham:
8-Feb-2007
Although the esmtps protocol gives an error, the mail is still sent.
PeterWood:
6-Mar-2008
In March 2007, Olivier Auverlot published his second major book on 
ÒREBOL Ð Guide du programmeurÓ.  Written in his native French the 
book has been well received, not least by Carl Sassenrath:  ÒYes, 
Olivier has done it again with another good book on REBOL.Ó



Olivier and I have been working on an English translation, "REBOL 
- a programmer's guide" for a little while now. The book will eventually 
be published in both printed and electronic form on lulu.com. The 
prices are likely to be Euro 25.00 for the printed edition and Euro 
16.99 for the portable document format version (pdf) version. (For 
those of you outside the Euro zone, Lulu also provides prices in 
Pounds Sterling and US Dollars.)


  As the translation is likely to take some time to complete, we are 
  providing exclusive previews of each chapter for those who don't 
  want to wait until the whole book has been translated. The previews 
  will only be available until the complete book is ready. Each chapter 
  will be published as a pdf once it is available and will cost Euro 
  2.99.


  The first chapter "Discover Rebol in an hour" is a hands-on introduction 
  to Rebol for programmers following the development of an automated 
  File Transfer Protocol (FTP) client. It covers many facets of this 
  highly productive language. It is available today at http://www.lulu.com/content/2092020



The next three chapters, "The Rebol Language", "GUI, graphics and 
sound" and "Networking and the Internet" will be available within 
the next few days.


  Olivier is the author of the book; I am the author of any mistakes 
  that have crept in during the translation.
Group: SDK ... [web-public]
Gabriele:
31-Jan-2007
prot-http.r does not define https but only http. you need to net-install 
https too (just copy&paste the line that installs http in prot-http.r 
and replace protocol name and port id)
TimW:
21-May-2007
Nevermind.  I didn't realize the http protocol wasn't included in 
enface.
amacleod:
2-Mar-2009
I was able to catch the top of the output:

I think there is an error in mysql-protocol.r
MZ has no value....

Anyone else have a problem encaping mysql-protocol.r?
amacleod:
2-Mar-2009
Can't find a refernec to MZ in mysql-protocol or my program
amacleod:
3-Mar-2009
#INCLUDE %"/C/Program Files/rebol/rebol-sdk/source/mezz.r"
#INCLUDE %"/C/Program Files/rebol/rebol-sdk/source/prot.r"
#INCLUDE %"/C/Program Files/rebol/rebol-sdk/source/view.r"

#INCLUDE %sqlite.r
#INCLUDE %mysql-protocol.r
;#INCLUDE %updater.r


;#INCLUDE %include.r
;#INCLUDE %window.r

;#INCLUDE %scroll-panel.r
;#INCLUDE %scroll-wheel-handler.r
#INCLUDE-binary %fd_shield.jpg
#INCLUDE-files %data [guest.db demo_template.db]
;#INCLUDE %sqlite3.dll
amacleod:
3-Mar-2009
Having the same problem with scripts...mysql-protocol.r

** Access Error: Cannot open /C/Documents and Settings/Alan/Desktop/mysql-protocol.r
** Near: do %mysql-protocol.r
db_IP: mysql://Alan:[Stynki4-:-onfire-:-selfip-:-com]:3306/onfire
do
amacleod:
3-Mar-2009
Its included....#INCLUDE %mysql-protocol.r
Oldes:
3-Mar-2009
if you #INCLUDE %mysql-protocol.r than it does not mean that you 
can: do %mysql-protocol.r in your script.
amacleod:
3-Mar-2009
sql_protocol: do #INCLUDE %mysql-protocol.r
Oldes:
3-Mar-2009
sql_protocol: #include-block %mysql-protocol.r
...
do sql_protocol
Rondon:
14-Jan-2012
REBOL [
Title: "ARCFOUR and CipherSaber"
Date: 17-Jan-2004
File: %arcfour.r
Author: "Cal Dixon"

Purpose: {Provides encryption and decryption using the ARCFOUR algorithm}

Note: {this implementation can decrypt data at about 40KB/s on my 
1Ghz AMD Duron system with Rebol/View 1.2.10.3.1}
Library: [
level: 'advanced
platform: 'all
type: [function module protocol]
domain: [encryption scheme]
tested-under: [view 1.2.10.3.1 on [W2K] by "Cal"]
license: 'PD
support: none
]
]


;ARCFOUR specification: http://www.mozilla.org/projects/security/pki/nss/draft-kaukonen-cipher-arcfour-03.txt

;CipherSabre specification: http://ciphersaber.gurus.com/faq.html#getrc4


arcfour-short: func [key [string! binary!] stream [binary! string!] 
/mix n /local state i j output swap addmod sz][

swap: func [a b s /local][ local: sz s a poke s a + 1 to-char sz 
s b poke s b + 1 to-char local ]
addmod: func [ a b ][ a + b // 256 ]
sz: func [ s a ][ pick s a + 1 ]

state: make binary! 256 repeat var 256 [ insert tail state to-char 
var - 1 ]

j: 0 loop any [ n 1 ] [ i: 0 loop 256 [ swap i j: addmod j add sz 
state i sz key i // length? key state i: i + 1] ]
i: j: 0 output: make binary! length? stream
repeat byte stream [
swap i: addmod i 1 j: addmod j sz state i state

insert tail output to-char xor~ byte to-char sz state addmod (sz 
state i) (sz state j)
]
clear state
return output
] 

make root-protocol [
addmod: addmod: func [ a b ][ a + b // 256 ]
sz: func [ s a ][ pick s a + 1 ]

swap: func [a b s /local][ local: sz s a poke s a + 1 to-char sz 
s b poke s b + 1 to-char local ]
ins: get in system/words 'insert
i: 0 j: 0
open: func [port][
port/state/tail: 2000
port/state/index: 0
port/state/flags: port/state/flags or port-flags

port/locals: context [ inbuffer: make binary! 40000 state: make binary! 
256]
use [key n i j] [
key: port/key
n: port/strength
repeat var 256 [ ins tail port/locals/state to-char var - 1 ]
j: 0 loop any [ n 1 ] [
i: 0 loop 256 [

swap i j: addmod j add sz port/locals/state i sz key i // length? 
key port/locals/state i: i + 1
]
]
]
i: j: 0
]
insert: func [port data][
system/words/insert tail port/locals/inbuffer data do []
]
copy: func [port /local output][
output: make binary! local: length? port/locals/inbuffer
loop local [

swap i: addmod i 1 j: addmod j sz port/locals/state i port/locals/state

ins tail output to-char sz port/locals/state addmod (sz port/locals/state 
i) (sz port/locals/state j)
]
local: xor~ output port/locals/inbuffer
clear port/locals/inbuffer
local
]

close: func [port][ clear port/locals/inbuffer clear port/locals/state 
clear port/url clear port/key]
port-flags: system/standard/port-flags/pass-thru
net-utils/net-install arcfour self 0
]

arcfour: func [key stream /mix n /local port][
port: open compose [scheme: 'arcfour key: (key) strength: (n)]
insert port stream
local: copy port
close port
return local
]


; CipherSaber is an ARCFOUR stream prepended with 10 bytes of random 
key data
ciphersaber: func [ key stream /v2 n ][

arcfour/mix join key copy/part stream 10 skip stream 10 either v2 
[ any [ n 42 ] ][ 1 ]
]
Cyphre:
16-Jan-2012
Graham: I was able to implement TLS1.0 protocol configured to use 
the TLS_RSA_WITH_RC4_128_SHA cipher-suite. All the mentioned algorithms 
were calculated using the  build-in Rebol2 encryption functionality. 
I had no problems regarding the compatibility. I haven't tried the 
cipher-suite with the AES enctryption though but my guess it will 
work as well.
Cyphre:
18-Jan-2012
Doc: the code is in sort of "prototype state" and It was meant as 
possible implementation for R3 in future (once Carl put the encryption 
algorithms codebase into the R3/host-kit or someone write an extension 
for that).

I wrote it because I wanted to know if we could get rid of unnecesary 
C code that is currently in R2 to just handle the protocol logic 
while the performance of the crypto algorithms will remain in C. 
The current size is less than 20Kb of Rebol script code so IMO it 
could be useful and also easier maintainable way.

Currently it works in client-side mode only but there is already 
support for ASN.1 certificates also I tried to write the code so 
the server-side mode and other cipher-suites shouldn't be hard to 
add.

I plan to release the prototype to open public after some cleanup 
but if you want to waste some time with the current 'raw stuff' just 
post me privately and I'll send you a copy.
Group: DevCon2005 ... DevCon 2005 [web-public]
Gabriele:
8-Aug-2005
no, i didn't upgrade it. protocol should not change that much, should 
it? but i'll try updating it too. i'm downloading the mac version 
now and i'll try it on the mini.
JaimeVargas:
8-Aug-2005
Back. Yes protocol shouldn't change. But it doesn't cost much to 
test. ;-)
Pekr:
24-Sep-2005
so what is the stream address? is it rtsp protocol like it was last 
time?
Pekr:
30-Sep-2005
Beer is protocol based upon Beep, no? I wonder if it can somehow 
compare to Uniserve, or both are different kind of products?
Group: Tech News ... Interesting technology [web-public]
Henrik:
31-May-2007
Bad design, I guess. but you have to remember that AJAX is a huge 
hack on top of a non-persistent protocol. it's by definition harder 
to do these things, than with a clean implementation like REBOL/Services.
Will:
28-Jan-2009
people are not applauding a new great icon put here or there, they 
are applouding a man who did contribute to bringing computer world 
forward.. now I 'm a big fan of Obama too, soon he will sign the 
Kyoto protocol and this will bring a better world to all of us
Group: SQLite ... C library embeddable DB [web-public].
florin:
2-Oct-2010
I found this: http://www.rebol.org/documentation.r?script=sql-protocol.r
florin:
2-Oct-2010
And this is a snippet:

do %sql-protocol.r
    db: open sql:my-db
    insert db {
        SELECT * FROM a, b
        WHERE a.c2 = b.c1 AND a.c1 = 1
        ORDER BY 1, 2 DESC
    }
    foreach item copy db [probe item]
    close db

Isn't this better than working with strings?
Group: !REBOL3-OLD1 ... [web-public]
Maxim:
11-Apr-2006
and the one reason we continue using rebol is because we are of the 
type of people who WILL download an RFC and fix the http, ftp, proxy, 
xml, (whatever) protocol ourselves.
Maxim:
21-Apr-2006
It has just occured to me that if REBOL needs a niche and actually 
wants to have REBOL work in the Large... that they need to do only 
one thing.   Embrace XML.   its got everything going for it, there 
is nothing to invent (just read specs and implement, like protocol 
RFCs).
Group: !Cheyenne ... Discussions about the Cheyenne Web Server [web-public]
Maarten:
10-Jun-2007
>> test-string: "11 22 33"
== "11 22 33"
>> dehex test-string
== "11 22 33"
>> do %cheyenne.r
Script: "Cheyenne Web Server" (9-Jun-2007)
Script: "Untitled" (none)
[uniserve] Async Protocol FastCGI loaded
[uniserve] Starting task-master...
[uniserve] Starting HTTPd...
(escape)
>> dehex test-string
== "11 22 33"
Oldes:
13-Jun-2007
isn't the value triger in http protocol (4000) too low?
Dockimbel:
18-Jun-2007
I already have the HTTP protocol with streaming support for UniServe, 
so this shouldn't be a big work to implement such module (would just 
require to think about how to make it as generic as possible).
Dockimbel:
18-Jun-2007
With UniServe's async HTTP protocol, it won't block Cheyenne.
Dockimbel:
18-Jun-2007
Blocking for the end user : sure as long as he hasn't upload all 
the file, he won't receive a response from Cheyenne (that's the HTTP 
protocol).
Dockimbel:
27-Jun-2007
So it seems that the issue is either with the HTTPS protocol in REBOL 
or with stunnel.
Graham:
27-Jun-2007
Wasn't Gabriele asking for people to test a new http(s) protocol 
??
Pekr:
5-Jul-2007
tried your package:

[uniserve] Async Protocol FastCGI loaded
[uniserve] Starting task-master...
[uniserve] Starting RConsole...
[uniserve] Starting HTTPd...
unknown-host

## Error in [uniserve] : On-received call failed with error: make 
object! [
    code: 311
    type: 'script
    id: 'invalid-path
    arg1: 'handler
    arg2: none
    arg3: none
    near: [either in port/locals/handler name: 'new-insert-port]
    where: 'insert-port
] !
Chris:
11-Jul-2007
I have an embryonic Rest protocol (doesn't work properly yet).  It's 
a reimplementation of http designed more for web services (Rest, 
not soap, though soap if you wish).
Dockimbel:
12-Jul-2007
Cheyenne release v0.9.16 beta. Download at http://softinnov.org/tmp/cheyenne-r0916.zip

Changelog :

v0.9.16 - 12/07/2007
	
	o Localization framework added to RSP. API overview :
	
		- #[text] in static parts of RSP pages will be translated.
		

  - new function: say "data" : translate a string! value in the current
		  language.
		  
		- session's new 'lang variable can set the current language.
		
		- new config file options to control default language and 
		  locales resources folder.
		

 o Decode-cgi rewrote from scratch. Cleaner and 2-3 times faster than 
 before.
	

 o RSP request params decoding rewrote. Now GET and POST parameters 
 are unified
	  in request/content.
	  
	o BugFix for encapping %misc/mime-types file.
	

 o File upload support redesigned. Now big files (user defined threshold) 
 are

   directly written to disk in temporary files, instead of being held 
   in memory.

   The temporary files are deleted once the request is completed. So 
   now

   Cheyenne supports files upload up to 2Gb (R2 port! limitation).
	  

 o CGI execution extended to any scripts (not just REBOL). If found, 
 the

   shebang line (#!) is honored (on all platforms). Several perl scripts
	  added in %www/ folder as demo.
	  

 o Module's 'on-started event now fired only once, when multiple HTTPd 
 instances
	  are listening on more than one port.
	  

 o New module : mod-extapp for launching and managing external applications.

   Only the start and shutdown actions are currently supported. Load 
   balancing
	  will be included in future.
	
	o FastCGI protocol reliability improved and some bugs fixed.
	
	o RSP-API documentation updated.
Dockimbel:
28-Jul-2007
Most languages support the CGI interface, they call all be used with 
Cheyenne. I plan a specific support for Java servers (by implementing 
AJP protocol in Cheyenne).
Group: !CureCode ... web-based bugtracking tool [web-public]
Henrik:
30-Aug-2009
using install.r, I get the following error:

CureCode Installation...
...loading MySQL protocol
Script: "MySQL Protocol" (12-Jul-2008)
MySQL protocol loaded
...creating database
...database root Password: *******
connecting to: localhost
...access ok to database
...creating tables

** User Error: ERROR 1136 : Column count doesn't match value count 
at row 1
** Near: make error! info
Dockimbel:
1-Sep-2009
But I've reimplemented the dig:// scheme as an UniServe async protocol.
Dockimbel:
29-Dec-2009
When the SMTP protocol fails to connect or to send, it raises an 
exception that traverse UniServe's and Cheyenne layer and is messing 
things in a way I cannot track back. That's the only case where I 
see such kind of issues. It seems to be specifically related to raised 
errors in port's handlers.
201 / 67812[3] 4567