* Posts by sweh

57 publicly visible posts • joined 6 Jul 2017

Page:

RAM is getting expensive, so squeeze the most from it

sweh

Re: "Perlod's guidelines seem reasonable"

2xRAM never applied to Linux (nor Solaris 2); it's an old BSD (hence SunOS 4) thing where if you had nMB of RAM then you needed nMB of swap as backing store, so 2nMB swap resulted in a total of 2nMB of virtual memory (if swap was smaller than RAM then you couldn't even use all your RAM). Yuck.

So to match the old SunOS rule-of-thumb of "swap = twice RAM" then you'd have "swap = RAM" to get the same effective result. But that's from back when memory was small; 4Mb of RAM was luxury. Now we have gigs of RAM; do we really want to be doing slow slow slow swapping of gigs to disk?

It gets even more complicated. Old school swapping doesn't really happen these days; it's pretty much all paging ("swapping" used to mean placing a whole process into swap; "paging" works at a memory page level). Paging is more effective because it means a program could still be running and doesn't need to page back in the swapped out pages if it never touches them. Note, though, that we still call it "swapping in/out pages of memory" so the terminology is less than clear :-) But this means that really infrequently used pages of memory can be thrown away from memory and placed into swap with pretty much zero performance impact; they might never be used again!

If gets yet even more complicated when we look at demand paging of applications; even apps don't get loaded into memory in one chunk, the pages get loaded in as needed. Processes can start faster, less RAM is used and it makes shared pages (eg common pages of libc that might be in many processes) even more efficient (it's already in RAM). It also means that the kernel could just _drop_ pages (don't send them to swap) and reload them from the original executable if the page is ever needed again.

And then we run into what failure mode you want to tolerate. For some people having the OOM kill a process and generate a hard failure is sometimes more preferable to reduced performance ("why is it taking me 10 seconds just to get the login prompt on the console? Oh, the machine is swapping to death..."). Think of a cluster of web servers behind a load balancer; having the webserver die (and so drop out of the load balancer much much quicker) might be preferable to having it take forever to respond to an API request (a load balancer health check might succeed where an API call might time out because that needs more backend resources).

So how much swap do you need? It depends :-)

Quicksort inventor Tony Hoare reaches the base case at 92

sweh

Re: OCCAM and Transputers

Yeah, my first login was October 1987, and in 1990 I was supporting Ultrix, SunOS 4, Xenix, Altos SVr2 and SVr3 systems, and Convergent Technologies CTIX (which I think was a SVr3 version).

When Linux became a viable OS (as opposed to the 0.11 root+boot disks which were a fine proof of concept) I only went with it rather than BSD because the NetBSD install of the time didn't understand PC partitions so I couldn't dual-boot between it and DOS. I lucked into the right path :-)

sweh

I really struggled in his CSP class when I was at Oxford. The first half was OK because it fitted into my mind very similar to how Unix handled pipes. "I get this! I use it all the time!". But then we moved onto the Failure Model and I realised I hadn't really understood the first half properly at all. Oh well!

BOFH: Eight pints of a lager and a management breakthrough

sweh

Re: Ah yes, 6-Sigma.

I got caught out on that, once. The ISO9000 audit failed us for our backups. Not because our backups were bad, but because they _exceeded_ what we'd documented (we had an extra verification step in the process that we hadn't documented). Such a PITA.

Debian goes retro with a spatial desktop that time forgot

sweh

BIOS Boot process

> The legacy-BIOS boot process requires more than just that: it also needs a boot sector

It very much also depends on the boot medium.

The first sector of the hard disk (the Master Boot Record - MBR) contains the primary boot loader, along with the definitions of the 4 primary partitions. In the old DOS days this code could be created with "FDISK /MBR". At power on time the BIOS would read the MBR sector (signature, code, partition table) into memory then execute it.

It was then up to those 440-ish bytes of code to find (from the in-memory partition table) the secondary boot loader for the active partition. This was generally the first few sectors of that partition and was OS specific. The DOS loader would know enough to find IO.SYS and COMMAND.COM; all this could be written with the "SYS" command. More complicated loaders, such as LILO and then GRUB could do a lot lot more.

A floppy disk boot skipped that MBR process ('cos no partitions) and went straight to the OS specific boot loader, loading from the first sector of the disk. As you noted, older Linux kernels had this boot loader code at the beginning so it could be raw-written to a floppy. eg the 0.11 boot+root disks; the boot disk held the boot sector and the kernel, and then you switched that out for the root disk once the kernel had loaded.

All these sectors were loaded in using BIOS calls, and in the early days the C/H/S definitions led to the 500MB limit for the C: drive (although older DOS - eg 3.3 - had a 20MB limit, anyway); it wasn't until LBA mode came along that we could handle larger disks. The LILO secondary files all had to live within that first 500Mbyte of disk 'cos it still used the BIOS to load them, hence the common setup of having /boot being a separate partition at the beginning of the disk when dealing with larger disks.

Really old PCs couldn't boot from CD and hadn't even heard of USB :-) That's why the older Windows CD also came with a boot floppy!

De-duplicating the desktops: Let's come together, right now

sweh

Re: Always looking the wrong way at the wrong thing.

This is where things get complicated. If you used corporate Exchange servers in 2010 then it also came with a (really bad) version of OWA; Outlook Web Access. It did the barest minimum necessary for a web based mail/calendar but it really wasn't a replacement for the fat client.

outlook.com, as a web service, didn't start until around 2013 ( https://news.microsoft.com/source/2013/02/18/microsoft-officially-launches-outlook-com/ )

So it's very possible that a user in 2010 using the Outlook application was using it as a POP3 client (IMAP if they were lucky) to another mail service.

Major AWS outage across US-East region breaks half the internet

sweh

Re: Too much in us-east-1

Never use the "server side encryption" (SSE) function of things like S3 because they are totally dependent on the Cloud Service Provider's (CSPs) tooling and the data is processed unencrypted on the CSP infrastructure. I made it a hard requirement for storing sensitive data in the cloud; S3 SSE was necessary for all class of data, but insufficient for sensitive data.

For that we also use "client side encryption".

In this, the keys need not be stored "in the clear"; they can be stored in HSMs (even on-prem HSMs), and pulled into compute memory for use in encryption/decryption. Good software even fragments that key throughout memory so it's not contiguous and need not even be in the same locations during an execution.

Is this impossible to break? No, but it would require the CSP to take a memory snapshot of your machine and then try to find where the fragments exist and reconstruct the key. Or perhaps try and find the credentials to the HSM and spoof network traffic with the necessary identity to get the HSM to release the keys.

This is an active attack and a LOT different to the CSP handing over of keys they possess to the authorities.

As RHEL clones hit version 10, Rocky and Alma chart diverging paths

sweh

I think it's time for me to call "time"

I've been a RedHat user since RH4.1 (not RHEL; the original RH4.1). I got it on the InfoMagic CDs (remember them?!). Then I went to CentOS, then Rocky. It really helped when the US banking industry moved to Linux 'cos (RHAS then) RHEL was the most commonly picked distro, and I knew that.

But now RedHat is making it too hard for the copies. I don't need to admin servers professionally any more, so I don't _need_ compatibility, but the delays in releases and patches as those teams work hard to replicate RedHat's work are a little concerning.

So maybe it's time to switch; possibly to Debian since I use that on my desktop already.

Oh well. It's been a good run (almost 30 years!) but I think it's time to call "time".

Automatic UK-to-US English converter produced amazing mistakes by the vanload

sweh

Re: (larger) US pint

Note that a US floz is larger than a UK floz (29.6ml vs 28.4ml) so you can't directly compare 16 to 20.

It's better to convert to a common unit (metric, in this case) where a US pint is 473ml, vs a UK pint of 568ml; this makes it clearer that a UK pint is "only" 20% larger than a US pint and not the 25% you might expect due to floz counts.

Strap in, get ready for more Rust drivers in Linux kernel

sweh

Re: Such awful interop

[clarkson]POWER![/clarkson]

Christmas 1984: The last hurrah for 8-bit home computers

sweh

Best present, ever

I got my Beeb for Christmas 1983 when I was 15. When I started earning money it got a Solidisk DDFS and Solidisk 2M128 board. It traveled with me when I moved to America (with a link in the PSU set to make it 120V) and is still working just fine. It's gained a few friends (another B, a couple of Masters, econet, a Pi400 running RiscOS) but that original machine is still the one I use most.

It probably also helped me become the geek I am today; just playing with the thing whenever I could taught me a lot. My whole career might have been different if it wasn't for that Christmas present!

Google Timeline location purge causes collateral damage

sweh

History

I guess I must have clicked the right buttons at some point; my phone has timeline data _in maps_ going back to 11th November 2015. The data looks a little wrong (eg it has my "driving" when I was on a train) but it seems mostly OK.

Not sure what phone I was using back then... maybe Galaxy S4.

Maps has never been terribly accurate with locations; eg when I walk to the shops (maybe a mile) it can show that it's missed the path I've taken and just drawn a straight line between them. I still see that 9 years later!

Verizon wobbles on the East Coast, outage cuts off night owls

sweh

My home internet via FIOS in New Jersey doesn't appear to have been impacted; I run a webserver on it that uptime robot checks every 5 minutes and it never reported any issues.

So I guess I was part of the "good New York" region!

Bitwarden switches password manager and SDK to GPL3 after FOSS-iness drama

sweh

No docker needed

It's trivially simple to extract the minimum necessary files from the container and run this "native". You don't even need docker engine to do the extract.

Even better, they document the process at https://github.com/dani-garcia/vaultwarden/wiki/Pre-built-binaries using the docker-image-extract script

Sysadmins rage over Apple’s ‘nightmarish’ SSL/TLS cert lifespan cuts plot

sweh

Automation don't work this way

Very very few mega enterprises (y'know; your banks, credit card processors) have it that automated because they have a dozen different technologies between you and their server (WAFs, load balancers, k8s, whatever).

In an old school enterprise changing a cert may require 3 different teams (WAF team, load balancer team. server team). And this isn't automatable because the server stuff was designed 20+ years ago and is a unique snow flake. (Hell, it might even be on a VMS system, definitely could be mainframe). And the underlying network is a hodge-podge of mergers and NAT that you literally _can't_ get there from here.

Backend processing (eg card transactions) can still survive because "fuck apple"... until they demand this for ApplePay.

45 days won't break the internet, but it _will_ break services we depend on, daily.

Admins using Windows Server Update Services up in arms as Microsoft deprecates feature

sweh

AAD is not AD

Entra ID is the new name for "Azure Active Directory" (AAD). AAD was not "Active Directory" (AD) in anything except name; it was a totally different technology. They used the name for marketing reasons, and it probably got a few people to migrate from on-prem AD to AAD.

Rust for Linux maintainer steps down in frustration with 'nontechnical nonsense'

sweh

Re: The age old problem

"And amazingly C++ for DOS, UNIX, Xenix etc was available by 1987. Linux Kernel 1st release was 1993."

FWIW, Linux kernel 0.11 was 1991, 0.95 (where it was going mainstream and early distros appearedl e.g. https://en.wikipedia.org/wiki/MCC_Interim_Linux#Version_0.95c+) was 1992, 0.99 was end 1992; 1.0 was 1994.

There _was_ an attempt to allow C++ in the kernel in the past but it was pretty much abandoned 'cos the state of the compilers weren't that good and Torvalds was not a fan of the language; https://lkml.org/lkml/2004/1/20/20

Elon Musk’s Starlink won't block Elon Musk’s X in Brazil, as required by court order

sweh

Re: Colossus

Or even the film ("Colossus: The Forbin Project", 1970).

"This is the voice of world control. I bring you peace. It may be the peace of plenty and content or the peace of unburied death. The choice is yours: Obey me and live, or disobey and die."

BASICally still alive: Classic language celebrates 60 years with new code and old quirks

sweh

Re: BBC Basic

10 DIM C% 50

20 FOR A=0 TO 2 STEP 2

30 P%=C%

40 [OPT A

50 LDX #0

60 .lp

70 LDA msg,X

80 BEQ fin

90 JSR &FFEE

100 INX

110 BNE lp

120 .fin

130 RTS

140 .msg

150 EQUS "Hello, world!"

160 EQUB 13

170 EQUB 10

180 BRK

190 ]

200 NEXT

210 CALL C%

I can fix this PC, boss, but I’ll need to play games for hours to do it

sweh

The opposite

Back in the early 90s (in my first job), I convinced my boss to play games (OK, OK, Solitaire)...

This was early in Windows days (3.1?) and he came into my office with a new laptop and a copy of windows and office and told me to get it working. OK, no problem. Install..install..install..lots of floppy swaps later...

I took the machine into his office and showed him it working.

"Great, now how do I learn how to use this?"

Thinking furiously, I made up some bullshit on the spot. "There's these games <here>. I recommend playing Solitaire. It sounds silly but it will get you used to basic functions like moving the mouse accurately, clicking, drag'n'drop and so on". He looked skeptical, but agreed to try.

Two days later he came back into my office and slapped me on the back and said "That game you told me to play? It worked! Thank you"

At last: The BBC Micro you always wanted, in Mastodon form

sweh

Eliza?

The old-school not-an-AI. e.g. https://8bs.nerdoftheherd.com/8BS48/content/2-eliza/

Hershey phishes! Crooks snarf chocolate lovers' creds

sweh

I moved to NYC 22 years ago, and wandering around I found some Cadbury's Fruit and Nut. Since I was a little home sick I bought it. And after tasting a few chunks was almost sick. Checking the label I saw "Made under license by Hershey".

That put me off Hershey chocolate!

40 years of Turbo Pascal, the coding dinosaur that revolutionized IDEs

sweh

FreePascal FTW! https://www.freepascal.org/

Share your 2024 tech forecasts (wrong answers only) to win a terrible sweater

sweh

AI and Quantum computing turns out to be good.

OpenAI will crack Quantum Computing so efficiently that it will run on a "Raspberry Pi 6 (Quantum Edition)". All TLS cryptography is rendered useless as a result. Internet banking collapses and banks have to re-open branches, with the Post Office opening new offices to support smaller communities. Cash becomes king again.

The extra foot traffic revitalises the small town High Street. Public transit requirements grow and the bus networks expand to cope. Employment levels approach 100%.

Google Drive misplaces months' worth of customer files

sweh

Re: Take responsibility

I also have the 6 account "family" plan; with work discount that's $75/yr for 6TB of cloud storage.

I use it as an offsite copy of my backups, using rclone to do the copying (which encrypts while uploading). So I have primary backups onto my raid6, which is my normal "oops, I deleted a file I need it back" store. I rsync that to external USB disks, just incase the raid dies totally. It'd take a while, but I'd be able to restore almost everything. And then I rclone the important bits that to the cloud, just incase there's a fire or something; in this case I wouldn't be able to recover my ripped DVDs/BDs but I would be able to get everything else.

Is that overkill for a home network? Probably! But then I also have 2 DNS servers, 2 DHCP servers, run my own web/smtp/dns/nntp/vpn/... Overkill is kinda what I do :-)

Linux has nearly half of the desktop OS Linux market

sweh

Re: Huh?

There's a reason why we now have WSL2; this uses hypervisor technology to run Linux in a micro-VM. This increases compatibility (eg "docker" won't run on WSL1, it runs fine on WSL2). But at a cost. For example, with WSL1 your processes show up in the windows task manager but with WSL2 this doesn't happen; Windows is mostly blind to what happens inside the VM.

Microsoft can easily deprecate WSL1 if they need to, but retain the ability to run Linux apps via WSL2.

sweh

Yeah, I started with 0.11 (boot+root disks), as a proof of concept to demonstrate to my manager that this could become a viable alternative to big expensive Sun SPARC systems. They didn't believe me, but I got the last laugh once SLS came out :-)

sweh

In defense of Android as a Linux

Android is a Linux distribution. It's just not _desktop_ Linux.

It has a native shell that you can reach without needing to root/break/hack; just enable debug mode and "adb shell" (just like you need to put ChromeOS into developer mode to enable crosh shell). Or you can install termux app (from the app store, so easier than enabling crosh) if you want something more fully featured.

No, it doesn't come with glibc, but then neither do other linux distros like "Alpine Linux", nor other embedded Linux systems (eg OpenWRT).

Because it's not a desktop Linux, programs written expecting a desktop won't easily work nor be portable. But CLI programs and the like mostly just work as expected; you just need to compile for the target hardware and libraries.

In every respect it's Linux; it's just not _desktop_ Linux.

Rocky Linux claims to have found 'path forward' from CentOS source purge

sweh

Re: Ignoring the big issue

> Nobody has the right to redistribute source under the GPL

GPL says "1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium"

So once I have the source code I have the right to distribute it anywhere (as long as I "conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program."

There's no _mandate_ that I distribute the source (unless I distribute a binary based on that source) but I do have the right to do it. And whoever I send the source to _also_ has the right to distribute it, and so on.

Red Hat strikes a crushing blow against RHEL downstreams

sweh
Unhappy

Maybe this will be sorted, eventually.

This isn't the first time this sort of "You get our binaries and GPL but if you exercise your GPL rights you lose further access to our binaries" issue.

The first one I can recall was sveasoft, who were early in creating an alternate software for the Linksys WRT54G based on Linksys GPL'd releases. They tried this sort of them and were condemned. Sveasoft died, and other alternatives like DD-WRT, OpenWRT etc thrived instead.

Later we had Grsecurity doing the same thing; Bruce Perens was sued for claiming this broke the GPL, but a judge threw it out ( https://www.theregister.com/2017/12/22/grsecurity_defamation_perens_dismissed/ )

In both cases no decision was actually made on whether restrictions like this broke the GPL license.

Now RedHat/IBM are doing this; I wonder if this is now high profile enough to get proper legal attention. Unfortunately any case could take years to resolve :-(

Burger King just sent spam receipts to customers

sweh
Facepalm

"I don't always test my code, but when I do I test it in production"

Microsoft announces a new Office for offline fans, slashes support, hikes the price

sweh

Re: I think. although maybe harsh

Hmm, I'm paying US$75/yr for a family O365 account; that's 6 users, each with 1Tb of OneDrive storage. 6Tb for $75? That's not a bad price, on its own, for off-site storage!

And with `rclone` (www.rclone.org) to send encrypted backups, and `https://github.com/abraunegg/onedrive` for "live-ish" syncing it means my Linux machines can happily make use of that space.

Philips kills dependence on its Hue hub, pointing to a Bluetooth world

sweh

Re: All my bulbs are old now :-(

The hue hub does not need to receive incoming connections from the internet; it reaches out to a google cloud hosted service via https. It does this to receive firmware updates, and to allow for remote control when out of house, and for integration with voice assistants, etc.

And in current affairs... Apple recalls three-prong AC adapters after some shocking behavior

sweh

Re: FYI

PogoPlug from 2009 did this (although it wasn't wireless). See, for example, https://zatznotfunny.com/2009-10/pogoplug-cloud-realignment/

London's Gatwick airport suspends all flights after 'multiple' reports of drones

sweh

Re: Why not kit out airports with anti-drone drones?

Flesh'n'blood hawks do the job just fine; https://www.youtube.com/watch?v=b5DEg2qZzkU

Equifax IT staff had to rerun hackers' database queries to work out what was nicked – audit

sweh

Re: I'd like to know

If the cert was being used for passive TLS decryption (a common technique for Data Loss Prevention) then an expired cert may not trigger alarms (the device manufacturer may consider that a normal case; certs do expire, especially if the cert store can handle multiple ones) but the TLS decryption would fail (also a normal scenario).

Since, in this scenario, it's passive no traffic gets blocked and data is no longer inspected.

Cert management needs to be proactive, not reactive.

Chromebooks gain faff-free access to Windows file shares via Samba

sweh

DFS

Hopefully it'll also work with Microsoft's Distributed File System (DFS) which makes a share look like \\domain\sharename and the service resolves to the best server to handle it (DR, regional replicas, etc). This is something Linux sometimes struggles with.

Security MadLibs: Your IoT electrical outlet can now pwn your smart TV

sweh

Re: It's Christmas!

Interesting demographic niche there: old enough to like "Merry Christmas Everybody", young enough to think Alexa is a good idea.

Or maybe old enough to be able to decide for themselves the pros and cons of Alexa and feel that the "fun" factor outweighs the minimal risk.

https://www.sweharris.org/post/2017-01-02-always-listening/

BTW, I'm 50 this year. Hardly a youngster.

sweh

UPnP? Ugh. That's just asking for remote attacks. Let's expose my IOT device to the whole internet. We've never seen that cause a problem before.

The other option is to have the devices reach out to a central server (which is what things like TP-Link Kasa, Frigidaire, Hue, Echo, TiVo...) all do. Now we're dependent on the central server keeping running! We've never seen those companies stop supporting devices or shutdown servers...

At least Kasa devices and Hue hub expose local network endpoints (unauthenticated so anyone on the local network can reach them) so if the central server does go away then at least freeware alternatives can be written.

There is no win... just various shades of lose.

sweh

It's Christmas!

"Shoot me now. Please, someone. Just end it before it gets any worse."

At Christmas time I plan on putting the tree lights on a smart switch and programming the echo so I can say "Alexa, it's Christmas!" and the tree lights will turn on and Slade will start playing.

Now that's smart :-)

EU wants one phone plug to rule them all. But we've got a better idea.

sweh

Re: Be much more interested in...

"NT4[...]stable and snappy"... yes, it dropped into that stable blue screen very very quickly!

Google Chrome update to label HTTP-only sites insecure within WEEKS

sweh

Re: @Tomato42

In the US, ISPs are mostly a local monopoly. You get your local cableco... or maybe Verizon if you're lucky. No real choice.

And when we've seen Verizon, Comcast, AT&T all MITM traffic...

And then you have people using Starbucks WiFi (are you sure you're on the Starbucks hotspot and not someone pretending to be it?) and other free hotspots...

Basically, the underlying transport must be considered insecure.

sweh

Re: http://www.bbc.com/

Yes, mixed content is not secure. The browser doesn't (shouldn't!) even attempt to access the http content, by default, which is why some people are screaming ("our ad network is http only; it'll stop working if we move the main server to TLS").

The ad networks will catch up. They'll have to.

sweh

Re: Shared Hosting

Umm, you might want to look at the Server Name Indication (SNI) field of TLS; it allows exactly for the situation where multiple hosts share the same IP address.

This solution is only about 10 years old. If your client supports TLS1.2 (and if it doesn't then you have bigger problems) then it should support SNI.

Smart bulbs turn dumb: Lights out for Philips as Hue API goes dark

sweh

I'm only 50, and I've seen failed switches. Admittedly that's in America, where I find the whole electrical setup to be scarily bad, compared to what I grew up with in England :-)

sweh

Expandability, flexibility, ease of installation.

Maybe the bulb of tomorrow will have a built-in Alexa. Or infrared sensors so they form part of your alarm system. Or speakers. Or motion control (think Kinect on steroids). Or...?

sweh
Big Brother

Google Cloud

I've been messing around with a Hues Emulator; a python script that runs on a VM and pretends to have light bulbs attached. The Alexa device detects these and adds them. Now when I use voice control I see a connection from the Echo (oddly, not the one I'm speaking to but another one in another room!) to the emulator. So Alexa voice control appears to be local (once it's been sent to Amazon for processing, of course).

For "out of home" connections, the Hue Bridge makes an outgoing persistent connection to a Hues website. My router conntrack is telling me it is currently connected to 104.155.18.91 - which is "....bc.googleusercontent.com" and has a certificate for ws.meethue.com (signed by some Philips intermediate) - I'm guessing a websockets layer.

Given this is google cloud compute, it's likely Philips pushed bad code...

AWS outage killed some cloudy servers, recovery time is uncertain

sweh

Re: Isn't cloud supposed to be fault tolerant?

No, clouds are not meant to be fault tolerant. "The cloud" may always be there and running, but individual instances inside the cloud may die at any time.

Clouds allow you to build applications that are fault tolerant. Indeed, applications should be designed to assume failure. There are many design patterns that can help with this.

This is why "lift and shift" doesn't buy you anything except "outsourced data center". If you build traditional applications and deploy them to the cloud then you need traditional HA solutions as well; duplicated service in a different datacenter, data copying, "DR" processes...

The responsibility for availability in the cloud rests solely on the application owner.

Cryptocoin investors sue Chase Bank for sky-high credit card charges

sweh

Re: MasterCard 'clarification' of MCC/SIC code?

This is most likely what happened.

Chase has not changed policies. The surcharge for cash advances has been around for many many years.

Merchant classifications, however, change all the time. Mostly you don't see them because you (as the card user) don't really care. It can affect what merchants may be in-scope for "5% bonus points" promotions, and end of year breakdowns, but normally it's invisible to you. Given the millions of merchants, it would be pointless telling you of changes.

So if this particular merchant had their classification changed so that it now counts as a cash advance then Chase would be perfectly entitled to put the surcharge on.

I fully expect this case to be dismissed.

Page: