Re: [U2] records with unprintable characters

2005-12-14 Thread Mats Carlid

Sometimes great minds think the same thought;-)

-- mats

Scott Ballinger wrote:


Sorry Mats, I should read deeper into the stack before jumping in...
Didn't notice that you had already suggested the same convert bad.chars
to null solution.

/Scott
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/

---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Fwd: [U2] Arev commands - Where's the original message?

2005-12-14 Thread Andy Pflueger
Isn't the following the original message to this thread? (from the bottom up)

snip
-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] Behalf Of Jerry Banker
Sent: Tuesday, December 13, 2005 1:51 PM
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] Arev commands


Well there was this one command that looked something like this:

start = 1
a = trim(rec[start,F,])

and I was wondering if it was using some kind of correlative to get the
length or if the brackets are used differently in Arev. Also, I would just
like to have a command reference for all of the various flavors of Pick so
if I need to convert a program from one flavor to another I could.

- Original Message -
From: Richard A. Wilson [EMAIL PROTECTED]
To: u2-users@listserver.u2ug.org
Sent: Tuesday, December 13, 2005 12:50 PM
Subject: Re: [U2] Arev commands


I dont believe there really is one. Also it really depends on which
revision level of arev you are running.

 is there any syntax/statement/function in particular you need

 Rich

 Jerry Banker wrote:

 Anybody know where I could get an on-line copy of the Advanced
 Revelations
 R/Basic commands? We don't have ARev but I was looking at a program and
 would
 like to see what some of the command syntax is compared to UV.

 Jerry Banker
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


[U2] pgsql and unidata basic

2005-12-14 Thread Jeff Powell
Is there a way to execute queries to a postgresql database from within a
unibasic program? I want to have our pick ticket print routine insert
records into a pgsql table.

Our system is an IBM RS6000 running AIX 5.3, UniData 6.0, SystemBuilder
5.3.8 and Prelude ADS v18.1.

Thanks in advance for any advice.

Jeff
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] Arev commands

2005-12-14 Thread Don Kibbey
I have a complete set of AREV manuals and disks for AREV OS/2.  If
your willing to pay the postage, I'm willing to put it in a box and
send it to you.

Thanks,
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] Arev commands - Where's the original message?

2005-12-14 Thread Jerry Banker

It is but even I didn't receive my original message.

- Original Message - 
From: Andy Pflueger [EMAIL PROTECTED]

To: U2 User Group Mailing List u2-users@listserver.u2ug.org
Sent: Wednesday, December 14, 2005 4:41 AM
Subject: Fwd: [U2] Arev commands - Where's the original message?


Isn't the following the original message to this thread? (from the bottom 
up)


snip
-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] Behalf Of Jerry Banker
Sent: Tuesday, December 13, 2005 1:51 PM
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] Arev commands


Well there was this one command that looked something like this:

start = 1
a = trim(rec[start,F,])

and I was wondering if it was using some kind of correlative to get the
length or if the brackets are used differently in Arev. Also, I would just
like to have a command reference for all of the various flavors of Pick so
if I need to convert a program from one flavor to another I could.

- Original Message -
From: Richard A. Wilson [EMAIL PROTECTED]
To: u2-users@listserver.u2ug.org
Sent: Tuesday, December 13, 2005 12:50 PM
Subject: Re: [U2] Arev commands



I dont believe there really is one. Also it really depends on which
revision level of arev you are running.

is there any syntax/statement/function in particular you need

Rich

Jerry Banker wrote:


Anybody know where I could get an on-line copy of the Advanced
Revelations
R/Basic commands? We don't have ARev but I was looking at a program and
would
like to see what some of the command syntax is compared to UV.

Jerry Banker

---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/

---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


[U2] RE: [UV] uvdlockd command

2005-12-14 Thread Jacques G.
When I do:  uvdlockd -?  I see the following options:

uvdlockd [options]
 
--
 
-t timerinterval timer to have daemon check
for deadlocks   
-r res  resolution to
use(0=Random;1=Youngest;2=Fewest Locks)   
-l log  location of the log file  
 
-query  requests a report of current status   
 
-victim sig identifies the signature of the victim
to be aborted
-p  performs a check on dead process
cleanup
-stop   shutdown the daemon   
 
NOTE:  The -query, -victim, and -stop options cannot
be used in conjunction with
 the other options
 
But when I check for processes using this program, I
see the -z switch being used.  For example:

uvdlockd -z -p -22781

Anyone know what the -z option does ?

__
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] RE: [UV] uvdlockd command

2005-12-14 Thread Leroy Dreyfuss
   The  -z  options  allows non-root users to start the daemon, though it
   will still require root to stop it.
   Regards,

   LeRoy F. Dreyfuss
   Product Manager
   IBM UniVerse and UniData (U2) Extended Relational Databases
   [cid:_2_131B3FDC131B3D8800627E36872570D7] Information   Management
   Software

   Tel: 303-773-7783  Fax: 303-773-5915
   Mobile: 720-341-4317   Tie-line: 656-7783
   External email:  [EMAIL PROTECTED]
   WWW:  http://www.ibm.com/software/data/u2

   Jacques G. [EMAIL PROTECTED]
   Sent by: [EMAIL PROTECTED]

   12/14/2005 10:00 AM

 Please respond to
u2-users@listserver.u2ug.org

   To

   u2-users@listserver.u2ug.org

   cc

  Subject

   [U2] RE: [UV] uvdlockd command

   When I do:  uvdlockd -?  I see the following options:
   uvdlockd [options]

   --

   -t timerinterval timer to have daemon check
   for deadlocks
   -r res  resolution to
   use(0=Random;1=Youngest;2=Fewest Locks)
   -l log  location of the log file

   -query  requests a report of current status

   -victim sig identifies the signature of the victim
   to be aborted
   -p  performs a check on dead process
   cleanup
   -stop   shutdown the daemon

   NOTE:  The -query, -victim, and -stop options cannot
   be used in conjunction with
   the other options

   But when I check for processes using this program, I
   see the -z switch being used.  For example:
   uvdlockd -z -p -22781
   Anyone know what the -z option does ?
   __
   Do You Yahoo!?
   Tired of spam?  Yahoo! Mail has the best spam protection around
   http://mail.yahoo.com
   ---
   u2-users mailing list
   u2-users@listserver.u2ug.org
   To unsubscribe please visit http://listserver.u2ug.org/

[demime 1.01d removed an attachment of type image/jpeg]
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [U2] Arev commands

2005-12-14 Thread Ralph Burton
Bob,
   
  IMHO, even for a Universe programmer, there'd still be a slight learning 
curve using the screen builder.  The dictionary/file formats are almost 
identical too. AREV was/is a wonderful product.
   
  I'm hoping Revelation as they now have offered a character mode with Open 
Insight will allow in the future the ability to run AREV applications.  Then 
slowly rebuild the screens in OI.
   
  Ralph

Bob Woodward [EMAIL PROTECTED] wrote:
  For the most part, R/Basic commands are very similar to the Universe
Basic commands. There are very subtle differences but nothing really
major. If you can work in Universe, you'll do just find in AREV.

BobW

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Jerry Banker
Sent: Tuesday, December 13, 2005 9:19 AM
To: u2-users@listserver.u2ug.org
Subject: [U2] Arev commands

Anybody know where I could get an on-line copy of the Advanced
Revelations
R/Basic commands? We don't have ARev but I was looking at a program and
would
like to see what some of the command syntax is compared to UV.

Jerry Banker
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/
  



-
Yahoo! Shopping
 Find Great Deals on Holiday Gifts at Yahoo! Shopping 
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [U2] pgsql and unidata basic

2005-12-14 Thread Brian Leach
Jeff 

Is postgres on the same box as udt?

Brian

-Original Message-
From: Jeff Powell[EMAIL PROTECTED]
Sent: 14/12/05 14:01:58
To: u2 users groupu2-users@listserver.u2ug.org
Subject: [U2] pgsql and unidata basic

Is there a way to execute queries to a postgresql database from within a
unibasic program? I want to have our pick ticket print routine insert
records into a pgsql table.

Our system is an IBM RS6000 running AIX 5.3, UniData 6.0, SystemBuilder
5.3.8 and Prelude ADS v18.1.

Thanks in advance for any advice.

Jeff
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


[Message truncated. Tap Edit-Mark for Download to get remaining portion.]
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


[U2] MV Design

2005-12-14 Thread Brian Leach
All
I'm intending to put a series of articles together on Designing MultiValue 
solutions, starting from first principles and emphasizing best practice.

These will be published in the knowledge base.

Since this is a contentious subject, rather than impose my thoughts :) I would 
like to invite contributions and to form a small working party to discuss and 
formalize the material.

Anyone interested please contact me off-list. I would like to get the first 
drafts published at end of Q1 next year.

Brian
U2UG board 
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] Arev commands

2005-12-14 Thread Jerry Banker
Since we don't use the program here and it's not a product that will be 
supported in the future I don't think I'll be interested. I was just looking 
to see if there is a repository of commands from the various flavors of PICK 
on the net. Obviously there is not. Maybe that could be a project for the 
U2UG to produce a book of commands. Sort of like a language translation 
dictionary. I noticed that Arev uses the OSREAD statement which is similar 
to what is used in Unidata but Universe doesn't have it, they use READSEQ.


- Original Message - 
From: Don Kibbey [EMAIL PROTECTED]

To: u2-users@listserver.u2ug.org
Sent: Wednesday, December 14, 2005 8:19 AM
Subject: Re: [U2] Arev commands



I have a complete set of AREV manuals and disks for AREV OS/2.  If
your willing to pay the postage, I'm willing to put it in a box and
send it to you.

Thanks,
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/

---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [U2] pgsql and unidata basic

2005-12-14 Thread Jeff Powell
Brian,

No. It isn't.

I think it is possible to install it there but I'm not sure. I have
never tried to build pgsql on an AIX machine.

Thanks,

Jeff


 On Wed, 2005-12-14 at 18:50 +, Brian Leach wrote:

 Jeff 
 
 Is postgres on the same box as udt?
 
 Brian
 
 -Original Message-
 From: Jeff Powell[EMAIL PROTECTED]
 Sent: 14/12/05 14:01:58
 To: u2 users groupu2-users@listserver.u2ug.org
 Subject: [U2] pgsql and unidata basic
 
 Is there a way to execute queries to a postgresql database from within a
 unibasic program? I want to have our pick ticket print routine insert
 records into a pgsql table.
 
 Our system is an IBM RS6000 running AIX 5.3, UniData 6.0, SystemBuilder
 5.3.8 and Prelude ADS v18.1.
 
 Thanks in advance for any advice.
 
 Jeff
 ---
 u2-users mailing list
 u2-users@listserver.u2ug.org
 To unsubscribe please visit http://listserver.u2ug.org/
 
 
 [Message truncated. Tap Edit-Mark for Download to get remaining portion.]
 ---
 u2-users mailing list
 u2-users@listserver.u2ug.org
 To unsubscribe please visit http://listserver.u2ug.org/

Jeff Powell

IT Manager
Industrial Piping Specialists
606 N. 145th Ave. E.
Tulsa, OK 74166
(918) 270-6311
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [U2] Arev commands

2005-12-14 Thread Bob Woodward
Hi Ralph,

I came from AREV into Universe and you're right about the screen builder
process.  I miss that functionality A LOT, too.  The original question
was about R/Basic, specifically, which is what my comment was about.  I
use to work for RTI before they moved the development from Bellevue, WA.
I agree with you, also, that AREV is wonderful.

As a side note, OI is going to be able to run AREV apps, directly, and
allow you to slowly modify the UI, piece by piece.  In my opinion, it's
long over due, but I'm excited they are coming out with this capability.
I'm excited to test it, too, as soon as I can get my hands on it.  You
should be able to get some direct info from their web site.  smile

BobW
 
-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Ralph Burton
Sent: Wednesday, December 14, 2005 10:36 AM
To: u2-users@listserver.u2ug.org
Subject: RE: [U2] Arev commands

Bob,
   
  IMHO, even for a Universe programmer, there'd still be a slight
learning curve using the screen builder.  The dictionary/file formats
are almost identical too. AREV was/is a wonderful product.
   
  I'm hoping Revelation as they now have offered a character mode with
Open Insight will allow in the future the ability to run AREV
applications.  Then slowly rebuild the screens in OI.
   
  Ralph

Bob Woodward [EMAIL PROTECTED] wrote:
  For the most part, R/Basic commands are very similar to the Universe
Basic commands. There are very subtle differences but nothing really
major. If you can work in Universe, you'll do just find in AREV.

BobW

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Jerry Banker
Sent: Tuesday, December 13, 2005 9:19 AM
To: u2-users@listserver.u2ug.org
Subject: [U2] Arev commands

Anybody know where I could get an on-line copy of the Advanced
Revelations
R/Basic commands? We don't have ARev but I was looking at a program and
would
like to see what some of the command syntax is compared to UV.

Jerry Banker
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/
  



-
Yahoo! Shopping
 Find Great Deals on Holiday Gifts at Yahoo! Shopping 
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [U2] pgsql and unidata basic

2005-12-14 Thread Logan, David (SST - Adelaide)
Hi Jeff,

If you can't get ODBC to work and access directly that way, try running
psql as a shell command. You could build up a little SQL to insert the
data you need and then execute it as a shell eg. EXECUTE 'echo MYCMD |
psql -h hostname other parameters'. I'm a universe person so not sure
what the exact syntax is on Unidata but this will certainly work for
you. 

Regards

David Logan
Database Administrator
HP Managed Services
148 Frome Street,
Adelaide 5000
Australia

+61 8 8408 4273 - Work
+61 417 268 665 - Mobile
+61 8 8408 4259 - Fax


-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Jeff Powell
Sent: Thursday, 15 December 2005 6:27 AM
To: u2-users@listserver.u2ug.org
Subject: RE: [U2] pgsql and unidata basic

Brian,

No. It isn't.

I think it is possible to install it there but I'm not sure. I have
never tried to build pgsql on an AIX machine.

Thanks,

Jeff


 On Wed, 2005-12-14 at 18:50 +, Brian Leach wrote:

 Jeff 
 
 Is postgres on the same box as udt?
 
 Brian
 
 -Original Message-
 From: Jeff Powell[EMAIL PROTECTED]
 Sent: 14/12/05 14:01:58
 To: u2 users groupu2-users@listserver.u2ug.org
 Subject: [U2] pgsql and unidata basic
 
 Is there a way to execute queries to a postgresql database from
within a
 unibasic program? I want to have our pick ticket print routine
insert
 records into a pgsql table.
 
 Our system is an IBM RS6000 running AIX 5.3, UniData 6.0,
SystemBuilder
 5.3.8 and Prelude ADS v18.1.
 
 Thanks in advance for any advice.
 
 Jeff
 ---
 u2-users mailing list
 u2-users@listserver.u2ug.org
 To unsubscribe please visit http://listserver.u2ug.org/
 
 
 [Message truncated. Tap Edit-Mark for Download to get remaining
portion.]
 ---
 u2-users mailing list
 u2-users@listserver.u2ug.org
 To unsubscribe please visit http://listserver.u2ug.org/

Jeff Powell

IT Manager
Industrial Piping Specialists
606 N. 145th Ave. E.
Tulsa, OK 74166
(918) 270-6311
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [U2] Arev commands

2005-12-14 Thread Ralph Burton
Hi Bob,
   
  As a side note, OI is going to be able to run AREV apps, directly, and
allow you to slowly modify the UI, piece by piece. In my opinion, it's
long over due, but I'm excited they are coming out with this capability.

Me too!
   
  Ralph


-
Yahoo! Shopping
 Find Great Deals on Holiday Gifts at Yahoo! Shopping 
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


[U2] UniVerse server socket issues

2005-12-14 Thread Gyle Iverson
I am trying to help a U2 VAR migrate their custom-developed socket interface
that uses the GCI to a pure BASIC solution using the U2 socket functions.
They realize that by doing this their customers will need to license
additional U2 seats, but they hate the UV GCI support issue on UNIX as UV
must be re-linked. Unfortunately, the initServerSocket() function has a few
flaws that stopped this project.

1) The initServerSocket() function precludes using the standard socket
behavior of letting the socket sub-system assign any available port number
when the port number 0 is specified. The initServerSocket() function
translates all port numbers less than 1 to port 40001. This behavior of
forcing port 40001 breaks an important standard feature often used when a
server process is spawned to provide a cooperative service for another
process. As long as the two cooperative processes can agree and communicate
the randomly assigned port number, there is no reason to hard-code the port
for either process. In fact, when it is possible to have an indeterminate
number of these cooperative processes, trying to assign and track which
ports are available, raises to the application level something that is
otherwise handled at the kernel layer. That is never a good thing. I can not
imagine why U2 restricts a valuable server socket feature. This reminds me
of a documentation error that made it into code.
 
2) The other issue with the initServerSocket() is that it does not recognize
when another process already has a given port open for listening. The
example program below demonstrates this issue. This flaw prevents the
application level from randomly assigning the port number and knowing that
the port is actually available. Of course, this would not have been an issue
if number 1 above let the socket kernel assign random port numbers. This is
an ugly flaw as a program could wait forever for a port, never knowing that
another process already has the port in use.
 
I am using UV 10.1.11 PE on Windows. I am hoping someone has developed a
work-around (other than GCI) or knows when the fix is scheduled.
 
Best regards,
Gyle

Program SERVER.SOCKET

   Print Select a port number that is already in use on the system to test
for contention : 
   Input listenPort
   If listenPort =  Then
  Stop
   End

   result = initServerSocket( , listenPort, 1, listenerSocket )
   If result Then
  function = initServerSocket()
  Gosub DisplaySocketError:
  Stop
   End Else
  Print initServerSocket(): listening on port  : listenPort
   End

   result = getSocketInformation( listenerSocket, -1, socketInformation )
   If result Then
  function = getSocketInformation()
  Gosub DisplaySocketError:
  Stop
   End

   Print Server socket information
   Print ---
   Print Status :  : socketInformation1,1
   Print Host   :  : socketInformation1,2
   Print Port   :  : socketInformation1,3
   Print Secure :  : socketInformation1,4
   Print Mode   :  : socketInformation1,5

   Print SERVER.SOCKET ready.

   Gosub CloseListenSocket:

   Stop

CloseListenSocket:
   * Close the listen socket
   result = closeSocket( listenerSocket )
   If result Then
  function = closeSocket()
  Gosub DisplaySocketError:
  Stop
   End
   Return

DisplaySocketError:
   internalResult = getSocketErrorMessage( result, errorMessage )
   Print function :  returned:  : result
   Print errorMessage
   Return

End
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [U2] UniVerse server socket issues

2005-12-14 Thread Tony Gravagno
For anyone unfamiliar with the topic, see my short article What are
Sockets?:
http://nebula-rnd.com/articles/sockets.htm
That will also help to understand my response below.

Original text snipped to a minimum.

Gyle Iverson wrote:
 Unfortunately, the initServerSocket() function has a few
 flaws that stopped this project.  

 1) The initServerSocket() function precludes using the
 standard socket behavior of letting the socket sub-system
 assign any available port number when the port number 0
 is specified. The initServerSocket() function translates
 all port numbers less than 1 to port 40001.

I've never seen a socket server use a random port.  Clients never use a
pre-determined port.  Clients need to know the port of a server, so a
server absolutely requires a fixed and well-known port.  Why do you need an
assigned port for a server?

 2) The other issue with the initServerSocket() is that it
 does not recognize when another process already has a
 given port open for listening.

I haven't read the specs for initServerSocket but if it doesn't return a
non-zero for an attachment failure then yes, it's probably broken.

However, in general, a given service should only have one listening
process.  It is valid to have a range of ports which all respond to inbound
connections as a single service - that is, multiple servers will be
listening to different socket ports, even if they support the same
application/transport service.  Coordination of what ports are in use for a
given service should be done by the application, so you should never really
get to a failure in initServerSocket.  If nothing else you can use netstat
to see what ports are in use and use a recognized port that is unallocated.
Again, if you randomly generate a socket port for a service, how will any
client know what port to connect to?

Good luck.
Tony Gravagno
Nebula Research and Development
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


[U2] Dynamic Connect 6.0.1 lockdown changes by IBM

2005-12-14 Thread Definitive Software Pty Ltd
Like a number of other Universe/Unidata developers I have been able to use
the various available Dynamic Connect facilities to significantly enhance
the look and feel of my application developments. In a price conscious
marketplace, it has been a huge advantage to be able to use this freely
distributed software to dramatically improve users appreciation and
perception of U2 based products.

I was therefore unimpressed to find that, without any advanced notification,
the latest revision 6.0.1 has been completely locked down via the use of
checksums to prevent users making ANY modifications to the distributed
terminal emulation and associated scripting files.

While understanding IBM's position in feeling that they had given too much
access to such powerful functionality away for free, all previous versions
of Dynamic Connect catered for these changes and, based on previous
responses to Oliver or the U2 user group queries on the older versions
involving recommendations to change the emulation files, such lockouts will
impact a large number of unsuspecting existing Dynamic Connect users.

As always, any product supplier that decides to remove previously available
functionality in later revisions, risks alienating existing users to move
away from their product. For IBM to make the effort to do this to a free
product only makes sense if they believe that such a move will 'encourage'
existing DC users to move to and purchase an expensive copy of Wintegrate,
when a more probable effect is to feel insulted by their actions and move to
other much cheaper products such as Accuterm. To me, to do so without even
notifying us of their intentions (there are not even any details on the
6.0.1 distribution disk warning about the changes) indicates that either
some product manager within IBM did it without fully informing their own
management, or IBM themselves are looking to roll it out under the radar to
avoid a backlash of user pressure to take out the changes.

In either case, the way they have instituted the lockdown is so harsh as to
impact many users over even the most 'trivial' of changes they may have
made.

For example, a Ctrl E (char(5)) in the standard vt100 emulation returns
the terminal id (DC TermID).  As Ctrl E is used by my applications (and who
wants to leave a keystroke active that displays the terminal Id to the users
screen anyway!) the original vt100.wit was copied and then modified so as
not to return the terminal id.  The 6.0.1 restriction, of not being able to
use any modified files, also applies to the extensions files.  As 6.0.1 now
refuses to load the modified emulation file, the result is that Dynamic
Connect 6.0.1 becomes unusable.  Whereas CtrlE may be the standard DEC
terminal id inquiry , many terminal emulators (including Microsoft's telnet)
do not respond to CtrlE or allow for the setup of the environment via
scripting or modifications to the configuration files to control the
environment.

My current approach is to hold onto the existing revision 5.1.2 for
distribution to new U2 customers and advise my existing customers not to
install any future Dynamic Connect revisions. Long term I may need to move
to another product. However, I would rather be able to quote IBM as a full
supporter of the U2 products (including Dynamic Connect), rather than having
to deal with their latest developments.
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [U2] UniVerse server socket issues

2005-12-14 Thread DAVID WOLVERTON
I suspect she is writing a CLIENT socket service that RUNS on the server --
one where I'm opening a socket to get data from another service - and as any
process could be doing the same, I'd just want the next available socket,
please  So I think the request is valid -- remember - our 3GL could be a
consumer of someone's service...

DW

-Original Message-

Gyle Iverson wrote:
 Unfortunately, the initServerSocket() function has a few flaws that 
 stopped this project.

 1) The initServerSocket() function precludes using the standard socket 
 behavior of letting the socket sub-system assign any available port 
 number when the port number 0 is specified. The initServerSocket() 
 function translates all port numbers less than 1 to port 40001.

I've never seen a socket server use a random port.  Clients never use a
pre-determined port.  Clients need to know the port of a server, so a server
absolutely requires a fixed and well-known port.  Why do you need an
assigned port for a server?
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [U2] UniVerse server socket issues

2005-12-14 Thread Gyle Iverson
Hello, Tony.

Tony Gravagno opined...
Clients need to know the port of a server, so a server 
absolutely requires a fixed and well-known port.  

A server can have a randomly assigned port that is fixed and well-known only
between the client and the server. If the server only exists for the benefit
of one client, it is up to them to figure out how to assign and communicate
the port dynamically. The fixed and well-known port requirement does not
imply that the assignment is permanent.

Why do you need an assigned port for a server?

Think about the problem of a client needing to spawn a unique server on
demand of the client. Each client may spawn a server dedicated to that
client. Certainly if one were using real UNIX/Windows processes, one could
single-thread through a central process and fork a new process, however, U2
products do not allow forking of processes. 

 2) The other issue with the initServerSocket() is that it
 does not recognize when another process already has a
 given port open for listening.

I haven't read the specs for initServerSocket but if it 
doesn't return a non-zero for an attachment failure then
yes, it's probably broken.

Yep.

However, in general, a given service should only have one listening
process.  

Not always true. There are dynamic services too.

It is valid to have a range of ports which all 
respond to inbound connections as a single service - that 
is, multiple servers will be listening to different socket 
ports, even if they support the same application/transport 
service.  

Interesting idea but it does not help with this issue. Have you tried
supporting multiple listening sockets in U2? You can not get anywhere
without a select() or poll() function analogue. While one could spawn
numerous phantoms, each listening on a unique port, one is left with how to
coordinate data and such between the phantoms. Not a pretty solution.

Coordination of what ports are in use for a given service 
should be done by the application, so you should never really
get to a failure in initServerSocket.  

Try the replication program using port 80. On my system initServerSocket
returns success even though IIS is currently bound to that port.

If nothing else you can use netstat to see what ports are in 
use and use a recognized port that is unallocated.

Yes, but not a solution for this issue.

Again, if you randomly generate a socket port for a service, 
how will any client know what port to connect to?

They communicate the port number behind the scenes.

Good luck.
Tony Gravagno

Thanks, Tony.

Best regards,
Gyle
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


[U2] [UD] LOGTO question...

2005-12-14 Thread DAVID WOLVERTON
How do I include a space in a LOGTO command? I've tried quoting.,
slashing... I must be missing something brutally simple...

It seems to always give a syntax error...

Exampl:?  Account is in the path:

C:\Program Files\david\data\AccountOfStuffas an example...

How do I log to this from the UniData DEMO account from the 'Colon' prompt?

While I know I should NOT do this, I need to do this at a site that is
running Windows...

TIA!!
DW
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [U2] UniVerse server socket issues

2005-12-14 Thread Glen B
 -Original Message-
 From: [EMAIL PROTECTED]
 [mailto:[EMAIL PROTECTED] Behalf Of Gyle Iverson
 Sent: Wednesday, December 14, 2005 7:43 PM
 To: u2-users@listserver.u2ug.org
 Subject: RE: [U2] UniVerse server socket issues


 Hello, Tony.

 Tony Gravagno opined...
 Clients need to know the port of a server, so a server
 absolutely requires a fixed and well-known port.

 A server can have a randomly assigned port that is fixed and
 well-known only
 between the client and the server. If the server only exists for
 the benefit
 of one client, it is up to them to figure out how to assign and
 communicate
 the port dynamically. The fixed and well-known port requirement does not
 imply that the assignment is permanent.


 FTP transfer is a good example of a dynamic port assignment. Client
commands are passed through server port 21, while the file data is sent to
the server through a dynamically spawned transfer service on a dynamically
assigned port.

 Why do you need an assigned port for a server?

 Think about the problem of a client needing to spawn a unique server on
 demand of the client. Each client may spawn a server dedicated to that
 client. Certainly if one were using real UNIX/Windows processes, one could
 single-thread through a central process and fork a new process,
 however, U2
 products do not allow forking of processes.


 No MV products can share the same user heap through forking or child
threading. If you want some options for socket services with MV, e-mail me
directly. execv() is a possibility using a C call, but it's not a fork or
thread solution. I don't want to flood the group with a bunch of potentially
meaningless text.

  2) The other issue with the initServerSocket() is that it
  does not recognize when another process already has a
  given port open for listening.
 
 I haven't read the specs for initServerSocket but if it
 doesn't return a non-zero for an attachment failure then
 yes, it's probably broken.

 Yep.

 However, in general, a given service should only have one listening
 process.

 Not always true. There are dynamic services too.


 FTP once again is a good example.

 It is valid to have a range of ports which all
 respond to inbound connections as a single service - that
 is, multiple servers will be listening to different socket
 ports, even if they support the same application/transport
 service.

 Interesting idea but it does not help with this issue. Have you tried
 supporting multiple listening sockets in U2? You can not get anywhere
 without a select() or poll() function analogue. While one could spawn
 numerous phantoms, each listening on a unique port, one is left
 with how to
 coordinate data and such between the phantoms. Not a pretty solution.

 No, it's not, but there are ways around this using external pooling. Like I
said, e-mail me. JD3 is a good example of a phantom pool, but phantom
pooling requires a lot of socket reconnections and that just puts unneeded
load on the network sub-system. It's a stable design, but I personally don't
like that architecture when there is a stream of short-term connections.


 Coordination of what ports are in use for a given service
 should be done by the application, so you should never really
 get to a failure in initServerSocket.

 Try the replication program using port 80. On my system initServerSocket
 returns success even though IIS is currently bound to that port.

 If nothing else you can use netstat to see what ports are in
 use and use a recognized port that is unallocated.

 Yes, but not a solution for this issue.

 Again, if you randomly generate a socket port for a service,
 how will any client know what port to connect to?

 They communicate the port number behind the scenes.

 broken recordFTP/broken record


 Good luck.
 Tony Gravagno

 Thanks, Tony.

 Best regards,
 Gyle


Glen
batchelg bell_south n.e.t
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [U2] UniVerse server socket issues

2005-12-14 Thread Tony Gravagno
DAVID WOLVERTON wrote:
 I suspect she is writing a CLIENT socket service that
 RUNS on the server -- one where I'm opening a socket to
 get data from another service - and as any process could
 be doing the same, I'd just want the next available
 socket, please  So I think the request is valid --
 remember - our 3GL could be a consumer of someone's
 service...  

Hmm, I was going to agree with you David.  (I've written a robust D3 socket
client to function as a consumer as you describe.)  But after re-reading
her first point I'm convinced that she wants a single U2 listener process
to spawn another socket server, maybe a number of them.  Glen may be right
on the FTP server analogy.  I'm guessing the process goes like this:

- Start socket server on a well-known port.
- Client connects.
- App needs to create another socket server port for this specific client
communicate on so that the well-known server port can remain open.
- On successfully opening a new random server port, U2 host sends the new
port# to the client so that the client can disconnect and reconnect in on
the new port.

Gyle wants to let the system assign the port for this new server and
appropriately points out that this should be managed at a level below the
application.  Unfortunately being right often gets us nowhere - a dedicated
socket pool may be required, say from 64000-65000.

The other problem is that because initsocketserver doesn't fail if it binds
to a socket already in use (not confirmed and may be release-specific), the
app could be returning a port# which the client cannot communicate on.  In
this case I'd say the client should tell the U2 host that the connection
failed and it needs another port.  Since the app is managing the pool, the
bad port is still removed from the pool and is no longer available to be
re-assigned to some other client, the app may need to release the handle.

Gyle, I really think you should reconsider use of netstat to tell you what
ports are already in use.

These are rotten solutions and there are a bunch of things that can go
wrong here which will require handshaking between multiple U2 ports and/or
polling, and some housekeeping process to refresh the pool, release
resources, etc.  I don't think there are any elegant solutions here or we'd
see a lot more sites doing this.

I don't think I can offer much more, sorry.
T
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] [UD] LOGTO question...

2005-12-14 Thread Arnold Bosch
You could try:

LOGTO C:\Progra~1\david\data\AccountOfStuff

Possibly the 8.3 notation for the directory will work - it's not ideal, and
you might have to confirm whether that is the actual 8.3 notation directory
for Program Files...

Arnold Bosch
IT Administrator
Taeuber  Corssen SWA (Pty) Ltd



   
 DAVID WOLVERTON 
 [EMAIL PROTECTED] 
 etTo 
 Sent by:  u2-users@listserver.u2ug.org  
 [EMAIL PROTECTED]  cc 
 stserver.u2ug.org 
   Subject 
   [U2] [UD] LOGTO question... 
 15/12/2005 02:50  
   
   
 Please respond to 
 [EMAIL PROTECTED] 
er.u2ug.org
   
   




How do I include a space in a LOGTO command? I've tried quoting.,
slashing... I must be missing something brutally simple...

It seems to always give a syntax error...

Exampl:?  Account is in the path:

C:\Program Files\david\data\AccountOfStuffas an example...

How do I log to this from the UniData DEMO account from the 'Colon' prompt?

While I know I should NOT do this, I need to do this at a site that is
running Windows...

TIA!!
DW
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [U2] [UD] LOGTO question...

2005-12-14 Thread colin.alfke
Well, if the space is in your udthome (eg. C:\Program Files\david) then
you can simply exclude that part from the logto (eg. Logto
data\AccountOfStuff).

You could probably use UniAdmin to setup the users to log directly to
that directory - or change the login to prompt for the path.

Otherwise, I think you may have to rename/move the directory. 

Hth
Colin Alfke

-Original Message-
From: DAVID WOLVERTON

How do I include a space in a LOGTO command? I've tried 
quoting., slashing... I must be missing something brutally simple...

It seems to always give a syntax error...

Exampl:?  Account is in the path:

C:\Program Files\david\data\AccountOfStuffas an example...

How do I log to this from the UniData DEMO account from the 
'Colon' prompt?

While I know I should NOT do this, I need to do this at a site 
that is running Windows...

TIA!!
DW
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] Dynamic Connect 6.0.1 lockdown changes by IBM

2005-12-14 Thread Ian Stuart
In response to a query regarding Dynamic Connect 5.2 in October 2003   
IBM replied that  Dynamic Connect (DC) was added to the U2 product 
suite to provide simple terminal emulation functionality equivalent to 
the UVTerm tool that had historically been available for UniVerse.

Well, one of the simple  things supported by UVTERM was the AREV 
screen handler which is also built into Dynamic Connect via extensions.  
Many other terminal emulations and extensions  eg  for System Builder 
not supported by UVTERM have been supplied as a part of Dynamic Connect 
with the associated scripts supplied in source form ie not compiled into 
.wix files.  As any user of Dynamic Connect will know, UVTERM is a poor 
comparison,  and to date,  Dynamic Connect has been a great replacement 
emulator giving users much needed additional functionality.  Being able 
to customise the supplied emulations has been one of the really powerful 
features and  customising the supplied scripts  has been invaluable in 
providing needed functionality.

For IBM to state that Dynamic Connect is a simple terminal emulator is 
to try to deflect the argument that once features have been made 
available - and documented - it's not OK  for the vendor to remove them 
without notice or warning. 

Further to this IBM stated in their reply that scripting had been 
documented in the Dynamic Connect manuals in error.   Hard lines for 
those users and developers, like yourself Alan, who never received this 
little tidbit of information from IBM that you were at risk of not being 
able to fully utilise later versions of Dynamic Connect even though your 
documentation said you could.

Oh yes,  we  were offered Wintegrate at a reasonable price because of 
this error.  This clearly indicated to me that IBM  were manouvering a 
situation where users,  who had exploited the documented feature of 
being able to script Dynamic Connect,  would at a later date be 
pressured to move to Wintegrate.

The other bit of arrogance was that as Dynamic Connect was freely 
distibuted IBM could take away features as they saw fit. The expression 
The lord gives and the lord takes away comes to mind

There are situations where UVTERM functionality can only be practiaclly 
supported through some form of scripting.  For example, the only 
practical way to support the UVTERM pop-up menus,  which users came to 
rely on in UVTERM,  is to write an extension to detect mouse events and 
load up a menu, supporting an image viewer is only practically supported 
via scripting, turning off CTRL-E you need to modify  vt100.wis, turning 
off the BEL etc. etc.

I do not recall though ever seeing a statement to the general U2 
community that removing features and locking down Dynamic Connect to 
the extent that you have experienced  was going to be IBM's stance.  
Rather than being an ommission, IBM have actually seen fit to 
deliberately spend time and money to remove a feature previously 
provided, even if not supported, and have done so in a really 
clandestine and disruptive manner with little thought as to the impact 
on the user base who provide IBM with a regular and profitable revenue 
stream.

This move could/should boost interest in AccuTerm and, if I can get 
AccuTerm to run on Linux that will be were my efforts will go


Regards
Ian Stuart

Definitive Software Pty Ltd wrote:

I was therefore unimpressed to find that, without any advanced notification,
the latest revision 6.0.1 has been completely locked down via the use of
checksums to prevent users making ANY modifications to the distributed
terminal emulation and associated scripting files.
  

As always, any product supplier that decides to remove previously available
functionality in later revisions, risks alienating existing users to move
away from their product. For IBM to make the effort to do this to a free
product only makes sense if they believe that such a move will 'encourage'
existing DC users to move to and purchase an expensive copy of Wintegrate,
when a more probable effect is to feel insulted by their actions and move to
other much cheaper products such as Accuterm. To me, to do so without even
notifying us of their intentions (there are not even any details on the
6.0.1 distribution disk warning about the changes) indicates that either
some product manager within IBM did it without fully informing their own
management, or IBM themselves are looking to roll it out under the radar to
avoid a backlash of user pressure to take out the changes.

In either case, the way they have instituted the lockdown is so harsh as to
impact many users over even the most 'trivial' of changes they may have
made.

---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


___ DISCLAIMER ___


This message contains confidential information and is intended only for the
individual named. If you are not the named addressee 

RE: [U2] LOGTO question...

2005-12-14 Thread Tony Gravagno
I'd like to piggyback on this question with another related:

What is the exact set of rules for determining whether an account
can/should be referenced via a full path vs just the name?  It seems it's
not as simple as just having an entry in UV.ACCOUNT or UD.ACCOUNT.  Is this
flavor-dependent?  It seems every time I'm working with a new client and in
different accounts we go through this ritual: if you can't logto some
account, try the full path.  Same goes for cataloging code in one account
where the object is in another: can't run the code - oops, the account name
needs to be the full path.

It would be nice to have some rules of thumb like : all accounts created
through UniAdmin can be referenced via account name only, or all Pick
flavor accounts created from the command prompt don't have a Ux.ACCOUNT
entry but creating one will always work...

Humble ignorance and gratitude,
Tony


DAVID WOLVERTON wrote:
 How do I include a space in a LOGTO command? I've tried
 quoting., slashing... I must be missing something
 brutally simple... 
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/