[ZendTo] Invalid JSON error - reCAPTCHA
Everton Bruno Bernardi
ebbernardi at gmail.com
Mon Nov 9 13:36:35 GMT 2020
Jules,
I'm currently on *Ubuntu 16.04.*
Please find below the output for the commands you sent.
root at hostname:~# ifconfig -a
ens160 Link encap:Ethernet HWaddr HIDDEN
inet addr:HIDDEN Bcast:HIDDEN.255 Mask:255.255.254.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:19150019 errors:0 dropped:456053 overruns:0 frame:0
TX packets:13861115 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:25447977490 (25.4 GB) TX bytes:49743121905 (49.7 GB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:51898 errors:0 dropped:0 overruns:0 frame:0
TX packets:51898 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:4636581 (4.6 MB) TX bytes:4636581 (4.6 MB)
root at hostname:~# ip addr list
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group
default qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP
group default qlen 1000
link/ether HIDDEN brd ff:ff:ff:ff:ff:ff
inet HIDDEN/23 brd HIDDEN.255 scope global ens160
valid_lft forever preferred_lft forever
root at hostname:~# sysctl -a | egrep -i 'ipv?6'
sysctl: reading key "net.ipv6.conf.all.stable_secret"
net.ipv6.anycast_src_echo_reply = 0
net.ipv6.auto_flowlabels = 1
net.ipv6.bindv6only = 0
net.ipv6.conf.all.accept_dad = 1
net.ipv6.conf.all.accept_ra = 1
net.ipv6.conf.all.accept_ra_defrtr = 1
net.ipv6.conf.all.accept_ra_from_local = 0
net.ipv6.conf.all.accept_ra_min_hop_limit = 1
net.ipv6.conf.all.accept_ra_mtu = 1
net.ipv6.conf.all.accept_ra_pinfo = 1
net.ipv6.conf.all.accept_ra_rt_info_max_plen = 0
net.ipv6.conf.all.accept_ra_rtr_pref = 1
net.ipv6.conf.all.accept_redirects = 1
net.ipv6.conf.all.accept_source_route = 0
net.ipv6.conf.all.autoconf = 1
net.ipv6.conf.all.dad_transmits = 1
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.all.force_mld_version = 0
net.ipv6.conf.all.force_tllao = 0
net.ipv6.conf.all.forwarding = 0
net.ipv6.conf.all.hop_limit = 64
net.ipv6.conf.all.ignore_routes_with_linkdown = 0
net.ipv6.conf.all.max_addresses = 16
net.ipv6.conf.all.max_desync_factor = 600
net.ipv6.conf.all.mc_forwarding = 0
net.ipv6.conf.all.mldv1_unsolicited_report_interval = 10000
net.ipv6.conf.all.mldv2_unsolicited_report_interval = 1000
net.ipv6.conf.all.mtu = 1280
net.ipv6.conf.all.ndisc_notify = 0
net.ipv6.conf.all.proxy_ndp = 0
net.ipv6.conf.all.regen_max_retry = 3
net.ipv6.conf.all.router_probe_interval = 60
net.ipv6.conf.all.router_solicitation_delay = 1
net.ipv6.conf.all.router_solicitation_interval = 4
net.ipv6.conf.all.router_solicitations = 3
sysctl: reading key "net.ipv6.conf.default.stable_secret"
net.ipv6.conf.all.suppress_frag_ndisc = 1
net.ipv6.conf.all.temp_prefered_lft = 86400
net.ipv6.conf.all.temp_valid_lft = 604800
net.ipv6.conf.all.use_oif_addrs_only = 0
net.ipv6.conf.all.use_tempaddr = 2
net.ipv6.conf.default.accept_dad = 1
net.ipv6.conf.default.accept_ra = 1
net.ipv6.conf.default.accept_ra_defrtr = 1
net.ipv6.conf.default.accept_ra_from_local = 0
net.ipv6.conf.default.accept_ra_min_hop_limit = 1
net.ipv6.conf.default.accept_ra_mtu = 1
net.ipv6.conf.default.accept_ra_pinfo = 1
net.ipv6.conf.default.accept_ra_rt_info_max_plen = 0
net.ipv6.conf.default.accept_ra_rtr_pref = 1
net.ipv6.conf.default.accept_redirects = 1
net.ipv6.conf.default.accept_source_route = 0
net.ipv6.conf.default.autoconf = 1
net.ipv6.conf.default.dad_transmits = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.default.force_mld_version = 0
net.ipv6.conf.default.force_tllao = 0
net.ipv6.conf.default.forwarding = 0
net.ipv6.conf.default.hop_limit = 64
net.ipv6.conf.default.ignore_routes_with_linkdown = 0
net.ipv6.conf.default.max_addresses = 16
net.ipv6.conf.default.max_desync_factor = 600
net.ipv6.conf.default.mc_forwarding = 0
net.ipv6.conf.default.mldv1_unsolicited_report_interval = 10000
net.ipv6.conf.default.mldv2_unsolicited_report_interval = 1000
net.ipv6.conf.default.mtu = 1280
net.ipv6.conf.default.ndisc_notify = 0
net.ipv6.conf.default.proxy_ndp = 0
net.ipv6.conf.default.regen_max_retry = 3
net.ipv6.conf.default.router_probe_interval = 60
net.ipv6.conf.default.router_solicitation_delay = 1
net.ipv6.conf.default.router_solicitation_interval = 4
net.ipv6.conf.default.router_solicitations = 3
sysctl: reading key "net.ipv6.conf.ens160.stable_secret"
net.ipv6.conf.default.suppress_frag_ndisc = 1
net.ipv6.conf.default.temp_prefered_lft = 86400
net.ipv6.conf.default.temp_valid_lft = 604800
net.ipv6.conf.default.use_oif_addrs_only = 0
net.ipv6.conf.default.use_tempaddr = 2
net.ipv6.conf.ens160.accept_dad = 1
net.ipv6.conf.ens160.accept_ra = 1
net.ipv6.conf.ens160.accept_ra_defrtr = 1
net.ipv6.conf.ens160.accept_ra_from_local = 0
net.ipv6.conf.ens160.accept_ra_min_hop_limit = 1
net.ipv6.conf.ens160.accept_ra_mtu = 1
net.ipv6.conf.ens160.accept_ra_pinfo = 1
net.ipv6.conf.ens160.accept_ra_rt_info_max_plen = 0
net.ipv6.conf.ens160.accept_ra_rtr_pref = 1
net.ipv6.conf.ens160.accept_redirects = 1
net.ipv6.conf.ens160.accept_source_route = 0
net.ipv6.conf.ens160.autoconf = 1
net.ipv6.conf.ens160.dad_transmits = 1
net.ipv6.conf.ens160.disable_ipv6 = 1
net.ipv6.conf.ens160.force_mld_version = 0
net.ipv6.conf.ens160.force_tllao = 0
net.ipv6.conf.ens160.forwarding = 0
net.ipv6.conf.ens160.hop_limit = 64
net.ipv6.conf.ens160.ignore_routes_with_linkdown = 0
net.ipv6.conf.ens160.max_addresses = 16
net.ipv6.conf.ens160.max_desync_factor = 600
net.ipv6.conf.ens160.mc_forwarding = 0
net.ipv6.conf.ens160.mldv1_unsolicited_report_interval = 10000
net.ipv6.conf.ens160.mldv2_unsolicited_report_interval = 1000
net.ipv6.conf.ens160.mtu = 1500
net.ipv6.conf.ens160.ndisc_notify = 0
net.ipv6.conf.ens160.proxy_ndp = 0
net.ipv6.conf.ens160.regen_max_retry = 3
net.ipv6.conf.ens160.router_probe_interval = 60
net.ipv6.conf.ens160.router_solicitation_delay = 1
net.ipv6.conf.ens160.router_solicitation_interval = 4
net.ipv6.conf.ens160.router_solicitations = 3
sysctl: reading key "net.ipv6.conf.lo.stable_secret"
net.ipv6.conf.ens160.suppress_frag_ndisc = 1
net.ipv6.conf.ens160.temp_prefered_lft = 86400
net.ipv6.conf.ens160.temp_valid_lft = 604800
net.ipv6.conf.ens160.use_oif_addrs_only = 0
net.ipv6.conf.ens160.use_tempaddr = 0
net.ipv6.conf.lo.accept_dad = -1
net.ipv6.conf.lo.accept_ra = 1
net.ipv6.conf.lo.accept_ra_defrtr = 1
net.ipv6.conf.lo.accept_ra_from_local = 0
net.ipv6.conf.lo.accept_ra_min_hop_limit = 1
net.ipv6.conf.lo.accept_ra_mtu = 1
net.ipv6.conf.lo.accept_ra_pinfo = 1
net.ipv6.conf.lo.accept_ra_rt_info_max_plen = 0
net.ipv6.conf.lo.accept_ra_rtr_pref = 1
net.ipv6.conf.lo.accept_redirects = 1
net.ipv6.conf.lo.accept_source_route = 0
net.ipv6.conf.lo.autoconf = 1
net.ipv6.conf.lo.dad_transmits = 1
net.ipv6.conf.lo.disable_ipv6 = 1
net.ipv6.conf.lo.force_mld_version = 0
net.ipv6.conf.lo.force_tllao = 0
net.ipv6.conf.lo.forwarding = 0
net.ipv6.conf.lo.hop_limit = 64
net.ipv6.conf.lo.ignore_routes_with_linkdown = 0
net.ipv6.conf.lo.max_addresses = 16
net.ipv6.conf.lo.max_desync_factor = 600
net.ipv6.conf.lo.mc_forwarding = 0
net.ipv6.conf.lo.mldv1_unsolicited_report_interval = 10000
net.ipv6.conf.lo.mldv2_unsolicited_report_interval = 1000
net.ipv6.conf.lo.mtu = 65536
net.ipv6.conf.lo.ndisc_notify = 0
net.ipv6.conf.lo.proxy_ndp = 0
net.ipv6.conf.lo.regen_max_retry = 3
net.ipv6.conf.lo.router_probe_interval = 60
net.ipv6.conf.lo.router_solicitation_delay = 1
net.ipv6.conf.lo.router_solicitation_interval = 4
net.ipv6.conf.lo.router_solicitations = 3
net.ipv6.conf.lo.suppress_frag_ndisc = 1
net.ipv6.conf.lo.temp_prefered_lft = 86400
net.ipv6.conf.lo.temp_valid_lft = 604800
net.ipv6.conf.lo.use_oif_addrs_only = 0
net.ipv6.conf.lo.use_tempaddr = -1
net.ipv6.flowlabel_consistency = 1
net.ipv6.flowlabel_state_ranges = 0
net.ipv6.fwmark_reflect = 0
net.ipv6.icmp.ratelimit = 1000
net.ipv6.idgen_delay = 1
net.ipv6.idgen_retries = 3
net.ipv6.ip6frag_high_thresh = 4194304
net.ipv6.ip6frag_low_thresh = 3145728
net.ipv6.ip6frag_secret_interval = 0
net.ipv6.ip6frag_time = 60
net.ipv6.ip_nonlocal_bind = 0
net.ipv6.mld_max_msf = 64
net.ipv6.mld_qrv = 2
net.ipv6.neigh.default.anycast_delay = 100
net.ipv6.neigh.default.app_solicit = 0
net.ipv6.neigh.default.base_reachable_time_ms = 30000
net.ipv6.neigh.default.delay_first_probe_time = 5
net.ipv6.neigh.default.gc_interval = 30
net.ipv6.neigh.default.gc_stale_time = 60
net.ipv6.neigh.default.gc_thresh1 = 128
net.ipv6.neigh.default.gc_thresh2 = 512
net.ipv6.neigh.default.gc_thresh3 = 1024
net.ipv6.neigh.default.locktime = 0
net.ipv6.neigh.default.mcast_resolicit = 0
net.ipv6.neigh.default.mcast_solicit = 3
net.ipv6.neigh.default.proxy_delay = 80
net.ipv6.neigh.default.proxy_qlen = 64
net.ipv6.neigh.default.retrans_time_ms = 1000
net.ipv6.neigh.default.ucast_solicit = 3
net.ipv6.neigh.default.unres_qlen = 31
net.ipv6.neigh.default.unres_qlen_bytes = 65536
net.ipv6.neigh.ens160.anycast_delay = 100
net.ipv6.neigh.ens160.app_solicit = 0
net.ipv6.neigh.ens160.base_reachable_time_ms = 30000
net.ipv6.neigh.ens160.delay_first_probe_time = 5
net.ipv6.neigh.ens160.gc_stale_time = 60
net.ipv6.neigh.ens160.locktime = 0
net.ipv6.neigh.ens160.mcast_resolicit = 0
net.ipv6.neigh.ens160.mcast_solicit = 3
net.ipv6.neigh.ens160.proxy_delay = 80
net.ipv6.neigh.ens160.proxy_qlen = 64
net.ipv6.neigh.ens160.retrans_time_ms = 1000
net.ipv6.neigh.ens160.ucast_solicit = 3
net.ipv6.neigh.ens160.unres_qlen = 31
net.ipv6.neigh.ens160.unres_qlen_bytes = 65536
net.ipv6.neigh.lo.anycast_delay = 100
net.ipv6.neigh.lo.app_solicit = 0
net.ipv6.neigh.lo.base_reachable_time_ms = 30000
net.ipv6.neigh.lo.delay_first_probe_time = 5
net.ipv6.neigh.lo.gc_stale_time = 60
net.ipv6.neigh.lo.locktime = 0
net.ipv6.neigh.lo.mcast_resolicit = 0
net.ipv6.neigh.lo.mcast_solicit = 3
net.ipv6.neigh.lo.proxy_delay = 80
net.ipv6.neigh.lo.proxy_qlen = 64
net.ipv6.neigh.lo.retrans_time_ms = 1000
net.ipv6.neigh.lo.ucast_solicit = 3
net.ipv6.neigh.lo.unres_qlen = 31
net.ipv6.neigh.lo.unres_qlen_bytes = 65536
net.ipv6.route.gc_elasticity = 9
net.ipv6.route.gc_interval = 30
net.ipv6.route.gc_min_interval = 0
net.ipv6.route.gc_min_interval_ms = 500
net.ipv6.route.gc_thresh = 1024
net.ipv6.route.gc_timeout = 60
net.ipv6.route.max_size = 4096
net.ipv6.route.min_adv_mss = 1220
net.ipv6.route.mtu_expires = 600
net.ipv6.xfrm6_gc_thresh = 2147483647
root at hostname:~# lsmod
Module Size Used by
binfmt_misc 20480 1
vmw_vsock_vmci_transport 28672 1
vsock 36864 2 vmw_vsock_vmci_transport
ppdev 20480 0
vmw_balloon 20480 0
joydev 20480 0
input_leds 16384 0
serio_raw 16384 0
nfit 32768 0
parport_pc 32768 0
parport 49152 2 ppdev,parport_pc
8250_fintek 16384 0
vmw_vmci 65536 2 vmw_vsock_vmci_transport,vmw_balloon
shpchp 36864 0
i2c_piix4 24576 0
mac_hid 16384 0
ib_iser 49152 0
rdma_cm 49152 1 ib_iser
iw_cm 45056 1 rdma_cm
ib_cm 45056 1 rdma_cm
ib_sa 36864 2 rdma_cm,ib_cm
ib_mad 49152 2 ib_cm,ib_sa
ib_core 106496 6 rdma_cm,ib_cm,ib_sa,iw_cm,ib_mad,ib_iser
ib_addr 20480 2 rdma_cm,ib_core
iscsi_tcp 20480 0
libiscsi_tcp 24576 1 iscsi_tcp
libiscsi 53248 3 libiscsi_tcp,iscsi_tcp,ib_iser
scsi_transport_iscsi 98304 4 iscsi_tcp,ib_iser,libiscsi
autofs4 40960 2
btrfs 987136 0
raid10 49152 0
raid456 110592 0
async_raid6_recov 20480 1 raid456
async_memcpy 16384 2 raid456,async_raid6_recov
async_pq 16384 2 raid456,async_raid6_recov
async_xor 16384 3 async_pq,raid456,async_raid6_recov
async_tx 16384 5
async_pq,raid456,async_xor,async_memcpy,async_raid6_recov
xor 24576 2 btrfs,async_xor
raid6_pq 102400 4 async_pq,raid456,btrfs,async_raid6_recov
libcrc32c 16384 1 raid456
raid1 36864 0
raid0 20480 0
multipath 16384 0
linear 16384 0
crct10dif_pclmul 16384 0
crc32_pclmul 16384 0
ghash_clmulni_intel 16384 0
aesni_intel 167936 0
aes_x86_64 20480 1 aesni_intel
lrw 16384 1 aesni_intel
gf128mul 16384 1 lrw
glue_helper 16384 1 aesni_intel
ablk_helper 16384 1 aesni_intel
cryptd 20480 3 ghash_clmulni_intel,aesni_intel,ablk_helper
psmouse 131072 0
vmwgfx 237568 1
ttm 94208 1 vmwgfx
drm_kms_helper 155648 1 vmwgfx
syscopyarea 16384 1 drm_kms_helper
sysfillrect 16384 1 drm_kms_helper
sysimgblt 16384 1 drm_kms_helper
fb_sys_fops 16384 1 drm_kms_helper
mptspi 24576 3
mptscsih 40960 1 mptspi
drm 364544 4 ttm,drm_kms_helper,vmwgfx
vmxnet3 57344 0
mptbase 102400 2 mptspi,mptscsih
scsi_transport_spi 32768 1 mptspi
pata_acpi 16384 0
floppy 73728 0
fjes 28672 0
On Sun, Nov 8, 2020 at 8:54 AM Jules <Jules at zend.to> wrote:
> Everton,
>
> What exact variant and version of Linux are you using?
> Please send me the output of these:
> ifconfig -a
> ip addr list
> sysctl -a | egrep -i 'ipv?6'
> lsmod
>
> Thanks!
> Jules.
>
> On 05/11/2020 18:53, Everton Bruno Bernardi wrote:
>
> Jules,
>
> IPV6 was enabled. Disabled IPV6 and rebooted the box but the issue
> persists.
> :/
>
>
>
> On Thu, Nov 5, 2020 at 3:18 PM Jules <Jules at zend.to> wrote:
>
>> Everton,
>>
>> I've just had a dig through my mail archives.
>>
>> Some folks at Brunel University in the UK had the same problem. Here is
>> their comment on the problem and how they fixed it:
>>
>> Reason for reCAPTCHA problem we understood relates to the firewall and
>> IPV6 settings.
>> Recently we had firewall and network changes implemented to our data
>> centre which had impact on IPV6 related connectivity in Linux environment.
>> We have disabled IPV6 on dropoff server and it worked fine without any
>> issues.
>>
>> Hope that helps,
>> Jules.
>>
>> On 05/11/2020 17:09, Everton Bruno Bernardi wrote:
>>
>> Jules,
>>
>> Thanks for that. I changed the code you sent me but it had no effect. The
>> same error occurs.
>> Am I able to send any debug information to help you out? If so, please
>> tell me how can I get it.
>>
>>
>> Regards,
>>
>> Everton
>>
>> On Thu, Nov 5, 2020 at 12:10 PM Jules <Jules at zend.to> wrote:
>>
>>> Hi Everton,
>>>
>>> I've just compared the code from 5.03 to the latest, for this specific
>>> problem.
>>>
>>> Try applying this patch (manually with a text editor is just fine!) to
>>> /opt/zendto/www/verify.php:
>>>
>>> 97,101c110,111
>>> < // Old version 1 code.
>>> < // $resp = recaptcha_check_answer($reCaptchaPrivateKey,
>>> < // getClientIP(),
>>> < //
>>> $_POST["g-recaptcha-response"]);
>>> < $recaptcha = new
>>> \ReCaptcha\ReCaptcha($reCaptchaPrivateKey);
>>> ---
>>> > $recaptcha = new \ReCaptcha\ReCaptcha($reCaptchaPrivateKey,
>>> > new \ReCaptcha\RequestMethod\CurlPost());
>>>
>>> If that helps, apply this (very similar) patch to
>>> /opt/zendto/www/pickup.php as that's the other place this call appears:
>>>
>>> 130c143,144
>>> < $recaptcha = new \ReCaptcha\ReCaptcha($reCaptchaPrivateKey);
>>> ---
>>> > $recaptcha = new \ReCaptcha\ReCaptcha($reCaptchaPrivateKey,
>>> > new \ReCaptcha\RequestMethod\CurlPost());
>>>
>>> I've never managed to figure out why sites which have been working
>>> perfectly well on the default suddenly stop doing so, with apparently no
>>> changes anywhere (except at Google?). But using the CurlPost() technique
>>> seems to work well for everyone.
>>>
>>> Let me know how you get on.
>>>
>>> Cheers,
>>> Jules.
>>>
>>> On 05/11/2020 14:54, Everton Bruno Bernardi wrote:
>>>
>>> Hi Jules,
>>>
>>> Thanks for your considerations.
>>> Unfortunately this is happening to all of our users (including external).
>>>
>>> I've already tried on other browsers and the same happens.
>>>
>>>
>>>
>>> Em qui, 5 de nov de 2020 11:18, Jules <Jules at zend.to> escreveu:
>>>
>>>> Everton,
>>>>
>>>> Please can you try a couple of things:
>>>> 1. Close all your browser tabs except 1 showing something like Google's
>>>> home page. Clear your browser cache completely, then quit and restart your
>>>> browser. Does the problem still occur?
>>>> 2. Try from an incognito/private browser window. Does that make it
>>>> behave?
>>>>
>>>> If number 2 makes it behave, then the browser cache isn't being fully
>>>> cleared, as that's the only important difference as far as a new tab is
>>>> concerned.
>>>>
>>>> Anyone else seeing this problem?
>>>>
>>>> Cheers,
>>>> Jules.
>>>>
>>>> On 05/11/2020 13:31, Everton Bruno Bernardi via ZendTo wrote:
>>>>
>>>> Hi there,
>>>>
>>>> Recently we've been facing the following issue with ZendTo (version
>>>> 5.03 - a lot old, I know):
>>>>
>>>> [image: image.png]
>>>>
>>>> I've confirmed the reCAPTCHA keys and everything seems to be correct.
>>>> What could I do in order to know what's really happening?
>>>>
>>>>
>>>> Thanks in advance.
>>>>
>>>> Regards
>>>>
>>>> --
>>>> *Everton Bruno Bernardi <http://google.com/+EvertonBrunoBernardi>*
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> ZendTo mailing listZendTo at zend.tohttp://jul.es/mailman/listinfo/zendto
>>>>
>>>>
>>>> Jules
>>>>
>>>> --
>>>> Julian Field MEng CEng CITP MBCS MIEEE MACM
>>>>
>>>> www.Zend.To
>>>> Twitter: @JulesFM
>>>>
>>>>
>>> Jules
>>>
>>> --
>>> Julian Field MEng CEng CITP MBCS MIEEE MACM
>>>
>>> www.Zend.To
>>> Twitter: @JulesFM
>>>
>>>
>>
>> --
>> *Everton Bruno Bernardi <http://google.com/+EvertonBrunoBernardi>*
>>
>>
>>
>> Jules
>>
>> --
>> Julian Field MEng CEng CITP MBCS MIEEE MACM
>>
>> www.Zend.To
>> Twitter: @JulesFM
>>
>>
>
> --
> *Everton Bruno Bernardi <http://google.com/+EvertonBrunoBernardi>*
>
>
>
> Jules
>
> --
> Julian Field MEng CEng CITP MBCS MIEEE MACM
>
> 'Find a place inside where there's joy, and the joy will burn out
> the pain.' - Joseph Campbell
> www.Zend.To
> Twitter: @JulesFM
>
>
--
*Everton Bruno Bernardi <http://google.com/+EvertonBrunoBernardi>*
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://jul.es/pipermail/zendto/attachments/20201109/3aa88d4a/attachment-0001.html>
More information about the ZendTo
mailing list