topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • Thursday September 10, 2026, 8:45 am
  • Proudly celebrating 15+ years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Recent Posts

Pages: prev1 2 3 4 5 [6] 7 8 9 10next
51
Hi,

I have been using this software for quite a while and am a fully licensed user. I rely on the software sometimes as a backup during coding work where I'm constantly copying and pasting html code. I occasionally copy a large block of html code from a web portal to a text document and vice versa. It's about 30 A4 pages of text which only equates to around 70kb of data. The problem is, the copied data isn't appearing in my Clipboard Help+Spell database. I worked out that it won't copy more than 10,000 characters, which in the case of the document mentioned above, is only 5 A4 pages. Can this be changed?

Thanks.
52
Hi folks! It’s been awhile since I’ve posted. Normally this should be in the non-windows sub board. But that section seems to be pretty dead and this is major enough that Linux users should want to be aware of this announcement which has major implications for both Linux software developers and future security concerns. In terms of codebase security this is a change in repository policy that’s long been overdue. And now that Debian has bit the bullet I’m guessing most if not all of the major distros will eventually have to follow suit.

53
So this is my edited mcpsFishDH.mrc
Spoiler
; ---------------------------------------------------------------------------
; MircryptionSuite - McpsFishDH addon v. 1.01.00 - dh key exchange
;
; see installation instructions at end of this readme.
;
; 06/01/03, mirc script by Dark Raichu, http://mircryption.sourceforge.net
; 12/05/03, Updated to use the new fish.dll which does 1024 bit keys and is *reportedly* safer.
; 12/20/03, Fixing some bugs that were preventing script from working if not in main mirc directory.
; 12/29/03, Added better error reporting.
; 02/02/04, updated to point to official fish site - thanks to author of fish
;           for informing me of its location and for making the fish source code publically available.
; 04/23/04, updated with new 1080 version of fish.dll
;           changed name of script.
; 05/24/04, message about old version was causing harmless annoying mirc error
; 01/18/05, adding dh support for cbc keys
; 01/22/05, added proper version reporting
; 01/24/05, added menu+switch for old style key exchange (may be useful for talking with dhfish eggdrops)
; 02/15/05, cleaned up a temp var, fixed rand chan key
; 11/04/05, fixed bug with multiserv nicks reporting no keyexchange in progress
; 01/14/26, Rhino: added support for fish_10 cbc syntax, also used by pzs-ng/glftpd/...
; MM/DD/YY?
; ---------------------------------------------------------------------------

; ---------------------------------------------------------------------------
; IMPORTANT:
; This addon uses the fish.dll which was written by [anonymous]/
;  it comes with version 1.25 of fish, but you should go get the LATEST
;  fish.dll from the original fish author here:
;  ----> http://fish.sekure.us
; Grab the standalone fish dh download and copy the fish.dll into the McpsFishDH directory.
; ---------------------------------------------------------------------------

; ---------------------------------------------------------------------------
; this mirc script (not the dll) is based on mirc code originally started by Sinner
;  and then continued by [anonymous]. the original credits section of blow.mrc:
;     "Big thanks go out to nutty for all his help
;      and to Joffi for his additional ideas
;      And even more thanks go out to mpyx, who helped me alot implementing
;      the secure keyXchange feature.
;      _SiNnEr_ 04-10-2003"
;
; Most of the work is done by the Fish.dll, which was written by [anonymous]
;  and uses code from the MIRACL C library.  thanks for making fish available to all of us.
; ---------------------------------------------------------------------------

;;---------------------------------------------------------------------------
;; IMPORTANT: [anonymous] has released the source code for fish(!) this is
;;  great news and means that the code can be validated if you have any
;;  question about it's integrity.  Still, USE THIS AT YOUR OWN RISK(!)
;;  ----> http://fish.sekure.us
;;---------------------------------------------------------------------------


;;---------------------------------------------------------------------------
;This addon is being provided to add compatibility between mircryption and
; blow, and to allow easier key exchange than mpgp.  Version 2 of mircryption
; will add it's own builtin secure key exchange that operates similarly.
;;---------------------------------------------------------------------------

;---------------------------------------------------------------------------
Installation:
0. Unload and delete any old version of mircryption_SinnerFishDH.mrc, this is
an old version and will interfere with the new version if you unload it
/unload -rs mircryption_SinnerFishDH.mrc
1. Copy the McpsFishDH directory to your mirc directory
2. From inside mirc do /load -rs McpsFishDH/mcpsFishDH.mrc
3. See the new fish menu available when right clicking in a query window.
;---------------------------------------------------------------------------

;---------------------------------------------------------------------------
Usage:
open a query window with someone, see new item in right click to exchange a key.
;---------------------------------------------------------------------------













;---------------------------------------------------------------------------
on *:START: {

  ; let user know the script is loaded 
  .mcdh_about
  %mc_sinnerscriptdll = " $+ $scriptdir $+ FiSH.DLL $+ "
}
;---------------------------------------------------------------------------


; about function tells version
alias mcdh_about {
  ; script version
  %mc_sinnerdhversion = 1.00.11
  if ($dialog(mcupdater_down).hwnd != $null) did -a mcupdater_down 7 McpsFishDH addon v. %mc_sinnerdhversion loaded and ready. $+ $crlf
  echo 7 -s MircryptionSuite - McpsFishDH addon v. %mc_sinnerdhversion loaded and ready.
}


;---------------------------------------------------------------------------
menu query {
  .Mircryption McpsFishDH 1080bit keyXchange (Mircryption CBC) [/mckeyx $1 MCBC] : mcsinnerdh.dhgetpubkey $1 MCBC
  .Mircryption McpsFishDH 1080bit keyXchange (Fish CBC) [/mckeyx $1 FCBC] : mcsinnerdh.dhgetpubkey $1 FCBC
  .Mircryption McpsFishDH 1080bit keyXchange (legacy ECB) ..... [/mckeyx $1 ECB] : mcsinnerdh.dhgetpubkey $1 ECB
}

menu nicklist {
  .Mircryption McpsFishDH 1080bit keyXchange (Mircryption CBC) [/mckeyx $1 MCBC] : mcsinnerdh.dhgetpubkey $1 MCBC
  .Mircryption McpsFishDH 1080bit keyXchange (Fish CBC) [/mckeyx $1 FCBC] : mcsinnerdh.dhgetpubkey $1 FCBC
  .Mircryption McpsFishDH 1080bit keyXchange (legacy ECB) ..... [/mckeyx $1 ECB] : mcsinnerdh.dhgetpubkey $1 ECB
}

menu channel {
  &Mircryption
  .More commands..
  ..McpsFishDH - Set Random Channel Key : rndkey $chan
}
;---------------------------------------------------------------------------








;---------------------------------------------------------------------------
alias mcsinnerdh.dhgetpubkey {
  mcsinnerdh.DH1080_INIT $1 $2-
  ; ATTN: halt not needed
  ;halt
}

alias mcsinnerdh.DH1080_INIT {
  ; /echo @debug calling mcsinnerdh.DH1080_INIT with $1-
  if ( %mc_sinnerdh_disautokey == 1 ) { halt }
  set %mc_sinnerdh_dh $+ [ $mcdh_cleanmultiserve($1) ] 1
  var %tempkey $dll(%mc_sinnerscriptdll,DH1080_gen,NOT_USED)
  %mc_sinnerdh_prv_key = $gettok(%tempkey, 1, 32)
  %mc_sinnerdh_pub_key = $gettok(%tempkey, 2, 32)

  unset %tempkey
  if ( ($gotmircryptioncbc) && ($2 == MCBC) ) {
    ; Mircryption CBC init
    .notice $1 DH1080_INIT_cbc %mc_sinnerdh_pub_key
    ; /echo @debug OUT: DH1080_INIT_cbc %mc_sinnerdh_pub_key
  }
  elseif ( ($gotmircryptioncbc) && ($2 == FCBC) ) {
    ; Fish CBC init
    .notice $1 DH1080_INIT %mc_sinnerdh_pub_key CBC
    ; /echo @debug OUT: DH1080_INIT %mc_sinnerdh_pub_key CBC
  }
  else {
    ; legacy ECB init
    .notice $1 DH1080_INIT %mc_sinnerdh_pub_key
    ; /echo @debug OUT: DH1080_INIT %mc_sinnerdh_pub_key
  }
  echo $color(Mode text) -tm $nick *** Sent my DH1080 public key to $1 $+ , waiting for reply ...
}

alias mckeyx {
  if ($1 == $null) {
    if ($$query($active)) {
      mcsinnerdh.dhgetpubkey $active
    }
  }
  else {
    mcsinnerdh.dhgetpubkey $1
  }
}
;---------------------------------------------------------------------------








;---------------------------------------------------------------------------
; NEW FISH DH Exchange Routines (1080)

on ^1:NOTICE:DH1080_INIT*:?:{
  ; /echo @debug NOTICE handler with $1-
  if ( %mc_sinnerdh_disautokey == 1 ) { halt }
 
  var %mode MCBCorFCBCorECB
  if ($1 == DH1080_INIT_cbc && $3 == $null) { %mode = MCBC }
  elseif ($1 == DH1080_INIT && $3 == CBC) { %mode = FCBC }
  elseif ($1 == DH1080_INIT && $3 == $null) { %mode = ECB }
  else { %mode = unknown }
  ; /echo @debug mode is %mode
 
  if ($len($2) == 180 || $len($2) == 181) {
    set %mc_sinnerdh_dh $+ [ $mcdh_cleanmultiserve($nick) ] 1
    echo $color(Mode text) -tm $nick *** Received DH1080 public key from $nick $+ ...
    var %tempkey $dll(%mc_sinnerscriptdll,DH1080_gen,NOT_USED)
    %mc_sinnerdh_prv_key = $gettok(%tempkey, 1, 32)
    %mc_sinnerdh_pub_key = $gettok(%tempkey, 2, 32)
    unset %tempkey

    ;/echo HEYDEBUG DH1080_INIT first word is $1
    ; /echo @debug IN: $1-

    var %secret = $dll(%mc_sinnerscriptdll,DH1080_comp, %mc_sinnerdh_prv_key $2)

    ; ATTN: set key for %nick to $secret (blow.setkey $nick %secret)
    var %retv
    if ( ( CBC isin %mode ) && ($gotmircryptioncbc) ) {
      %secret = cbc: $+ %secret
      %retv = $dll( %mc_scriptdll  , mc_setkey , $mcdh_cleanmultiserve($nick) %secret)
    }
    else {
      %retv = $dll( %mc_scriptdll  , mc_setkey , $mcdh_cleanmultiserve($nick) %secret)
    }

    if (%retv != $null) {
      ; echo 4 -s %retv
      if ( ( MCBC == %mode ) && ($gotmircryptioncbc) ) {
        echo $color(Mode text) -tm $nick *** Mircryption Fish keyXchange cbc (mircryption) complete: %retv
        .notice $nick DH1080_FINISH_cbc %mc_sinnerdh_pub_key
        ; /echo @debug OUT: DH1080_FINISH_cbc %mc_sinnerdh_pub_key
      }
      elseif ( ( FCBC == %mode ) && ($gotmircryptioncbc) ) {
        echo $color(Mode text) -tm $nick *** Mircryption Fish keyXchange cbc (fish) complete: %retv
        .notice $nick DH1080_FINISH %mc_sinnerdh_pub_key CBC
        ; /echo @debug OUT: DH1080_FINISH %mc_sinnerdh_pub_key CBC
      }
      else {
        echo $color(Mode text) -tm $nick *** Mircryption Fish keyXchange ecb complete: %retv
        .notice $nick DH1080_FINISH %mc_sinnerdh_pub_key
        ; /echo @debug OUT: DH1080_FINISH %mc_sinnerdh_pub_key
      }
    }
    else {
      echo $color(Mode text) -tm $nick *** Mircryption Fish keyXchange failed to set mircryption key.
      .notice $nick DH1080_FINISH ERROR
      ; /echo @debug OUT: DH1080_FINISH ERROR
    }

    unset %mc_sinnerdh_dh $+ [ $mcdh_cleanmultiserve($nick) ]
    unset %mc_sinnerdh_prv_key
    unset %mc_sinnerdh_pub_key
    unset %secret
  }
  else {
    echo $color(Mode text) -tm $nick *** Improper DH1080 init from $nick, aborting exchange.
  }
  halt
}



on ^1:NOTICE:DH1080_FINISH*:?:{
  ; /echo @debug NOTICE handler with $1-
  var %retv
  if ( %mc_sinnerdh_dh [ $+ [ $mcdh_cleanmultiserve($nick) ] ] != 1 ) {
    echo $color(Mode text) -tm $nick *** Received DH1080 finalization from $nick but no keyXchange is in progress - noaction taken.
    halt
  }

  ;/echo HEYDEBUG DH1080_FINISH first word is $1
  ; /echo @debug IN: $1-
 
  var %mode MCBCorFCBCorECB
  if ($1 == DH1080_FINISH_cbc && $3 == $null) { %mode = MCBC }
  elseif ($1 == DH1080_FINISH && $3 == CBC) { %mode = FCBC }
  elseif ($1 == DH1080_FINISH && $3 == $null) { %mode = ECB }
  else { %mode = unknown }
  ; /echo @debug mode is %mode

  if ($len($2) == 180 || $len($2) == 181) {
    var %secret = $dll(%mc_sinnerscriptdll,DH1080_comp, %mc_sinnerdh_prv_key $2)

    ; ATTN: set key for %nick to $secret (blow.setkey $nick %secret)

    if ( ( CBC isin %mode ) && ($gotmircryptioncbc) ) {
      %secret = cbc: $+ %secret
      %retv = $dll( %mc_scriptdll  , mc_setkey , $mcdh_cleanmultiserve($nick) %secret)
    }
    else {
      %retv = $dll( %mc_scriptdll  , mc_setkey , $mcdh_cleanmultiserve($nick) %secret)
    }

    if (%retv != $null) {
      if ( ( MCBC == %mode ) && ($gotmircryptioncbc) ) {
        echo $color(Mode text) -tm $nick *** Mircryption Fish cbc (Mircryption) keyXchange complete: %retv
      }
      elseif ( ( FCBC == %mode ) && ($gotmircryptioncbc) ) {
        echo $color(Mode text) -tm $nick *** Mircryption Fish cbc (Fish) keyXchange complete: %retv
      }
      else {
        echo $color(Mode text) -tm $nick *** Mircryption Fish ecb keyXchange complete: %retv
      }
    }
    else {
      echo $color(Mode text) -tm $nick *** Mircryption Fish keyXchange failed to set mircryption key.
    }

    unset %mc_sinnerdh_dh $+ [ $mcdh_cleanmultiserve($nick) ]
    unset %mc_sinnerdh_prv_key
    unset %mc_sinnerdh_pub_key
    unset %secret
  }
  else {
    echo $color(Mode text) -tm $nick *** Improper DH1080 reply from $nick, aborting exchange.
    ;echo $color(Mode text) -tm one is $1 and 2 is $2 and len is $len($2)
  }
  halt
}
;---------------------------------------------------------------------------













;---------------------------------------------------------------------------
; OLD FISH DH Exchange Routines

on ^1:NOTICE:DH1024_INIT*:?:{
  ; /echo @debug IN: DH1024_INIT full string is $1-
  var %retv
  if ( %mc_sinnerdh_disautokey == 1 ) { halt }
  if ($len($2) <= 172 && $len($2) >= 170) {
    set %mc_sinnerdh_dh $+ [ $mcdh_cleanmultiserve($nick) ] 1
    echo $color(Mode text) -tm $nick *** Received old DH1024 public key from $nick $+ ...
    .notice $nick Received old DH1024 public key from you! Please update to latest Fish version: http://fish.sekure.us , http://mircryption.sourceforge.net
    var %tempkey $dll(%mc_sinnerscriptdll,DH1024_gen,NOT_USED)
    %mc_sinnerdh_prv_key = $gettok(%tempkey, 1, 32)
    %mc_sinnerdh_pub_key = $gettok(%tempkey, 2, 32)
    unset %tempkey

    var %secret = $dll(%mc_sinnerscriptdll,DH1024_comp, %mc_sinnerdh_prv_key $2)

    ; ATTN: set key for %nick to $secret (blow.setkey $nick %secret)

    %retv = $dll( %mc_scriptdll  , mc_setkey , $mcdh_cleanmultiserve($nick) %secret)
    if (%retv != $null) {
      ; echo 4 -s %retv
      echo $color(Mode text) -tm $nick *** Mircryption Fish keyXchange complete: %retv
      .notice $nick DH1024_FINISH %mc_sinnerdh_pub_key
    }
    else {
      echo $color(Mode text) -tm $nick *** Mircryption Fish keyXchange failed to set mircryption key.
      .notice $nick DH1024_FINISH ERROR
    }

    unset %mc_sinnerdh_dh $+ [ $mcdh_cleanmultiserve($nick) ]
    unset %mc_sinnerdh_prv_key
    unset %mc_sinnerdh_pub_key
    unset %secret
  }
  else {
    echo $color(Mode text) -tm $nick *** Improper DH1024 init from $nick, aborting exchange.
  }
  halt
}


on ^1:NOTICE:DH1024_FINISH*:?:{
  ; /echo @debug IN: DH1024_FINISH full string is $1-
  if ( %mc_sinnerdh_dh [ $+ [ $mcdh_cleanmultiserve($nick) ] ] != 1 ) {
    echo $color(Mode text) -tm $nick *** Received old DH1024 finalization from $nick but no keyXchange is in progress - noaction taken.
    halt
  }
  if ($len($2) <= 172 && $len($2) >= 170) {
    var %secret = $dll(%mc_sinnerscriptdll,DH1024_comp, %mc_sinnerdh_prv_key $2)

    ; ATTN: set key for %nick to $secret (blow.setkey $nick %secret)
    var %retv
    %retv = $dll( %mc_scriptdll  , mc_setkey , $mcdh_cleanmultiserve($nick) %secret)

    if (%retv != $null) {
      echo $color(Mode text) -tm $nick *** Mircryption Fish keyXchange complete: %retv
    }
    else {
      echo $color(Mode text) -tm $nick *** Mircryption Fish keyXchange failed to set mircryption key.
    }

    unset %mc_sinnerdh_dh $+ [ $mcdh_cleanmultiserve($nick) ]
    unset %mc_sinnerdh_prv_key
    unset %mc_sinnerdh_pub_key
    unset %secret
  }
  else {
    echo $color(Mode text) -tm $nick *** Improper DH1024 reply from $nick, aborting exchange.
  }
  halt
}
;---------------------------------------------------------------------------





;---------------------------------------------------------------------------
alias rndkey {
  var %cname = $1
  if (%cname == $null) %cname = $active
  %cname = $chatchan(%cname)
  var %tempkey $dll(%mc_sinnerscriptdll,DH1080_gen,NOT_USED)
  %mc_sinnerdh_prv_key = $gettok(%tempkey, 1, 32)
  %mc_sinnerdh_pub_key = $gettok(%tempkey, 2, 32)
  var %tempkey2 $dll(%mc_sinnerscriptdll,DH1080_gen,NOT_USED)
  %mc_sinnerdh_prv_key2 = $gettok(%tempkey2, 1, 32)
  %mc_sinnerdh_pub_key2 = $gettok(%tempkey2, 2, 32)
  var %secret = $dll(%mc_sinnerscriptdll,DH1080_comp, %mc_sinnerdh_prv_key2 %mc_sinnerdh_pub_key)
  setkey %cname cbc: $+ %secret
  /echo 4 %cname key for %cname randomized.
  return %secret
}
;---------------------------------------------------------------------------



;---------------------------------------------------------------------------
; just do a multiserv
alias mcdh_cleanmultiserve {
  return $cleanmultiserve($1)
}
;---------------------------------------------------------------------------

;---------------------------------------------------------------------------
;end of file



Feel free to use it - at your own risk, ofc! :)
Reviews welcome :)


Here is the original for a diff: https://www.donation.../MircryptionCore.zip
54
Hi everyone,

I'm an independent developer from Japan, and I've been building a remote desktop tool called FlashDesk.

What it is

FlashDesk is a cross-platform all-in-one remote access app for Windows, macOS, and Linux, including Wayland support.

It combines:

* Remote desktop / screen sharing
* SSH
* File transfer
* Chat
* Session recording and playback

...all in one application, so you don't need to switch between separate tools for GUI remote control and server maintenance.

Why I built it

I wanted a remote access tool that:

* Works the same way across Windows, macOS, and Linux
* Doesn't restrict personal users to a small number of simultaneous sessions or viewer windows
* Keeps GUI remote control and SSH in the same workflow

I often need to keep multiple remote desktops open at once for development, support, monitoring, and maintenance. Existing tools either limited this or required juggling multiple apps.

Pricing

FlashDesk is free for personal, non-commercial use. All core features are included for personal use: screen sharing, remote control, SSH, recording, and file transfer.

Commercial or team use requires a paid license through the admin console.

Current status

FlashDesk was publicly launched in Japan at the end of April, and it currently has around 200 active users. It is still a young project, but real users are already trying it, reporting issues, and helping improve it.

Links

Website:
https://flashdesk.io/

Security information:
https://flashdesk.io/security.html

Feedback wanted

Since this is a solo project, feedback from people who actually use remote desktop tools would be very valuable.

I'm especially curious about:

* Whether the all-in-one approach makes sense, or whether you would rather keep separate tools for SSH and remote desktop
* What would help you trust, or distrust, a new remote desktop tool from a solo developer
* What features are missing for development, IT support, or server maintenance workflows

The app is still being improved, but it is already available for download from the website.

Thanks for taking a look. Any feedback, criticism, or suggestions are very welcome.
55
Screenshot Caaptor suddenly started giving me a "Stream read error" when I try to open it.  It was working fine a week ago and then suddenly it started giving me this error and won't open.
57
LaunchBar Commander / LBC Still Active?
« Last post by wperkins48 on May 04, 2026, 08:26 PM »
I have been using the registered LBC for over 20 years. I find it to be, by far, the best program for my needs, and it has more capabilities that I have yet to explore.

But, I am using the latest version of the software, which has not been updated since May 2020. And the latest post of this forum is dated 2024, and most of the recent posts have not had any replies.

Mouser, am I using and loving a dead program?
58
Community Giveaways / Re: Fanatical Mystery Bundle Leftovers
« Last post by Deozaan on May 04, 2026, 02:39 AM »
There are still many games left in this thread I'm willing to give away. Not only in the original post but also in this follow up post.
59
I'll take your extra Starbound key, please.
60
Official Announcements / Re: Winding down DonationCoder after 20 years
« Last post by Carol Haynes on May 03, 2026, 09:38 AM »
I have been lurking for so long now - I read posts sometimes and occasionally have commented but it is a long time since I really contributed.

Definitely won't cash out any remaining credits - if there is actual money there you can use please use it for the read only site costs.

Yes we did have a good time but it has felt that the time was coming for a while now. Thanks Jesse for being a bright star !!!

Best wishes for the future and Hogan sends Baby Cody his best wishes  :-*

Carol
onpole.jpg
Pages: prev1 2 3 4 5 [6] 7 8 9 10next